/* =========================================================================
   观微 CDSS · 医师版工作台（与产品演示 V5 同源设计）
   浅色医疗工位：白卡 / 细线框 / 深蓝主色 / 编号步骤导航 / 右栏操作指引 / 底部 audit_log
   ========================================================================= */
:root{
  --bg:#f2f4f8; --panel:#ffffff; --panel2:#f8fafc;
  --ink:#17233b; --sub:#5a6a85; --line:#e4eaf3;
  --blue:#1d4ed8; --blue-d:#0f2c73; --blue-t:#eaf1fe; --blue-b:#c4d7f7;
  --jade:#0f8a5f; --green:#15803d; --green-t:#eef9f1; --green-b:#bbe3c8;
  --red:#c5303c; --red-t:#fdf1f2; --red-b:#f2c4c9;
  --amber:#b45309; --amber-t:#fdf6ec; --amber-b:#f0d3a8;
  --gold:#8a6d1d; --gold-t:#fdf9ec; --gold-b:#e7d9ad;
  --shadow:0 12px 34px rgba(15,44,115,.10);
  --sans:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Segoe UI",system-ui,sans-serif;
  --serif:"Songti SC","STSong","Noto Serif SC",serif;
  --mono:Consolas,"JetBrains Mono","SF Mono",monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);height:100vh;overflow:hidden;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}
b{color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::-webkit-scrollbar{width:7px;height:7px}
::-webkit-scrollbar-thumb{background:#d3dce9;border-radius:4px}
::-webkit-scrollbar-track{background:transparent}
.hud{background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 2px 10px rgba(15,44,115,.07)}

/* ── 官网同源导航条 ─────────────────────────────────── */
#gwbar{position:relative;z-index:60;height:56px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
#gwbar .inner{max-width:1280px;margin:0 auto;padding:0 28px;height:56px;display:flex;align-items:center;gap:8px}
#gwbar .glogo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:17px;letter-spacing:1px;color:var(--ink);flex:none}
#gwbar .gw-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#0f2c73,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;flex:none;font-family:var(--serif);box-shadow:0 4px 12px rgba(29,78,216,.32)}
#gwbar .glogo small{font-size:9.5px;color:var(--sub);font-weight:500;letter-spacing:2.4px;display:block;line-height:1.1}
#gwbar .links{display:flex;gap:2px;margin-left:18px}
#gwbar .links a{padding:8px 13px;border-radius:8px;font-size:13.5px;color:#3c4a63;font-weight:500;white-space:nowrap;transition:.16s}
#gwbar .links a:hover{background:var(--blue-t);color:var(--blue)}
#gwbar .cta{margin-left:auto;display:flex;gap:10px;align-items:center}
.gwbtn{padding:8px 15px;border-radius:9px;font-size:13.5px;font-weight:600;border:1px solid var(--line);color:#3c4a63;background:#fff;white-space:nowrap;transition:.16s;display:inline-block}
.gwbtn:hover{border-color:var(--blue);color:var(--blue)}
.gwbtn.pri{background:var(--blue);border-color:var(--blue);color:#fff}
.gwbtn.pri:hover{background:#1740b8;color:#fff}
@media (max-width:1120px){#gwbar .links{display:none}}

/* ── 系统信息条 ─────────────────────────────────────── */
#top{height:52px;display:flex;align-items:center;gap:14px;padding:0 20px;border-bottom:1px solid var(--line);background:#f7f9fc;position:relative;z-index:5}
#top .logo{font-weight:800;font-size:15.5px;letter-spacing:1px;color:var(--blue);white-space:nowrap}
#top .dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex:none;animation:pu 2.4s infinite}
@keyframes pu{0%,100%{opacity:1}50%{opacity:.4}}
#top .clinic{font-size:12.5px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#top .env{margin-left:auto;font-size:11px;color:var(--red);border:1px solid var(--red-b);border-radius:6px;padding:4px 13px;background:var(--red-t);font-weight:600;white-space:nowrap}
@media (max-width:1120px){#top .env{display:none}}

/* ── 三栏骨架 ───────────────────────────────────────── */
#wrap{display:flex;height:calc(100vh - 108px);position:relative;z-index:1}

/* 左：步骤导航 */
#side{width:216px;flex:none;padding:14px 12px;display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line);background:#fff}
.nav{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;cursor:pointer;border:1px solid transparent;color:var(--sub);font-size:13.5px;user-select:none;transition:.15s}
.nav .no{width:22px;height:22px;border-radius:6px;background:#eef2f7;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:none;color:var(--sub);transition:.15s}
.nav:hover{background:#f6f8fb}
.nav.on{background:var(--blue-t);border-color:var(--blue-b);color:var(--blue);font-weight:700}
.nav.on .no{background:var(--blue);color:#fff}
.nav.lock{opacity:.4;cursor:not-allowed}
.nav.done .no{background:var(--green);color:#fff}
#side .case{margin-top:auto;padding:12px;border-radius:8px;background:#f0f6ff;border:1px solid #d4e3fa;font-size:11.5px;color:var(--sub);line-height:1.8}
#side .case b{color:var(--blue)}
#side .case .disclaimer{font-size:10px;color:var(--red);margin-top:6px;font-weight:600;text-align:center}

/* 中：工作区 */
#main{flex:1;overflow:auto;padding:16px 18px 48px;min-width:0}
.scr{display:none;animation:fin .3s}
.scr.on{display:block}
@keyframes fin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.sh{font-size:20px;font-weight:800;letter-spacing:1px;margin-bottom:4px;color:var(--ink)}
.sh::before{content:"// ";color:var(--blue)}
.sd{color:var(--sub);font-size:12.5px;margin-bottom:14px;line-height:1.7}

/* 右：操作指引 */
#guide{width:300px;flex:none;border-left:1px solid var(--line);background:var(--panel2);display:flex;flex-direction:column;min-height:0}
#guide .gh{padding:14px 16px 8px;font-weight:800;font-size:14px;letter-spacing:1px;color:var(--ink);flex:none}
#guide .gh span{font-size:10.5px;color:var(--sub);font-weight:400;display:block;margin-top:3px;letter-spacing:0}
#gsteps{padding:4px 12px;display:flex;flex-direction:column;gap:3px;flex:none}
.gs{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--sub);padding:5px 8px;border-radius:6px;cursor:pointer;transition:.15s}
.gs:hover{background:#eef3fa}
.gs .st{width:16px;height:16px;border-radius:50%;border:1.5px solid #c3cdd9;flex:none;font-size:9.5px;display:flex;align-items:center;justify-content:center;color:transparent;transition:.2s}
.gs.cur{background:var(--blue-t);color:var(--blue);font-weight:600}
.gs.cur .st{border-color:var(--blue);color:var(--blue)}
.gs.ok .st{background:var(--green);border-color:var(--green);color:#fff}
#gtell{margin:10px 12px 14px;padding:14px;border-radius:10px;background:#fff;border:1px solid var(--line);font-size:12.4px;line-height:1.85;flex:1;overflow:auto;box-shadow:0 1px 3px rgba(16,24,40,.05)}
#gfoot{margin-top:auto;padding:8px 14px;border-top:1px solid var(--line);font-size:10px;color:#8b99ad;line-height:1.6;background:var(--panel2)}
#gfoot a{color:inherit}
#gtell h4{font-size:13.5px;margin-bottom:8px;color:var(--blue)}
#gtell .blk{margin:9px 0;padding:9px 11px;border-radius:8px;background:#f0f6ff;border-left:3px solid var(--blue)}
#gtell .blk.warn{background:var(--red-t);border-left-color:var(--red)}
#gtell .blk.ok{background:var(--green-t);border-left-color:var(--green)}
#gtell .blk b{font-size:11.5px;display:block;margin-bottom:3px;color:var(--sub)}

/* ── 底部 audit_log ─────────────────────────────────── */
#audit{position:fixed;left:216px;right:300px;bottom:0;height:30px;background:#fff;border-top:1px solid var(--line);color:#66788f;font-size:11px;font-family:var(--mono);display:flex;align-items:center;padding:0 14px;gap:10px;z-index:50;white-space:nowrap;overflow:hidden}
#audit .t{color:var(--green);flex:none}
#audit .blink{color:var(--blue);animation:pu 1.6s infinite}

/* ── 通用组件 ───────────────────────────────────────── */
.card{padding:14px 16px;margin-bottom:12px}
.card h5{font-size:12px;margin-bottom:9px;color:var(--sub);font-weight:600;letter-spacing:1px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tag{display:inline-block;font-size:10.5px;padding:2px 9px;border-radius:4px;margin:0 3px 0 0;border:1px solid var(--line);color:var(--sub);white-space:nowrap;background:#f8fafc;font-weight:500}
.tag.c{border-color:var(--blue-b);color:var(--blue);background:var(--blue-t)}
.tag.g{border-color:var(--green-b);color:var(--green);background:var(--green-t)}
.tag.r{border-color:var(--red-b);color:var(--red);background:var(--red-t)}
.tag.a{border-color:var(--amber-b);color:var(--amber);background:var(--amber-t)}
.btn{cursor:pointer;border:1px solid var(--blue);color:var(--blue);background:#fff;border-radius:7px;padding:8px 18px;font-size:13px;font-weight:600;transition:.15s}
.btn:hover:not(:disabled){background:var(--blue-t)}
.btn.pri{background:var(--blue);color:#fff;border-color:var(--blue)}
.btn.pri:hover:not(:disabled){background:#1740b8;color:#fff}
.btn:disabled{opacity:.4;cursor:not-allowed}
.btn.sm{padding:5px 12px;font-size:12px;border-radius:6px}
.hint{font-size:11.5px;color:var(--sub);line-height:1.7}
code{background:#eef2f7;color:#0f4c81;border-radius:4px;padding:1px 7px;font-size:11.5px;font-family:var(--mono)}

/* 患者行 */
.row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;background:#fff;cursor:pointer;transition:.15s}
.row:hover{border-color:#b9d0f5;box-shadow:0 2px 8px rgba(29,106,229,.1)}
.row.sel{border-color:var(--blue);background:#f0f6ff}
.row .ava{width:34px;height:34px;border-radius:8px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex:none;font-size:14px}
.row .meta{flex:1;min-width:0;font-size:12px;color:var(--sub)}
.row .meta b{display:block;font-size:13.5px;color:var(--ink)}
.row .meta span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .rt{margin-left:auto;display:flex;gap:6px;align-items:center;flex:none;flex-wrap:wrap;justify-content:flex-end}

/* 档案表 */
.tbl{width:100%;border-collapse:collapse;font-size:12.3px}
.tbl th{background:#f6f8fb;color:var(--sub);font-weight:600;padding:7px 10px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:7px 10px;border-bottom:1px solid var(--line)}
.tbl tr:last-child td{border-bottom:0}
td.warn{color:var(--amber);font-weight:600}
td.bad{color:var(--red);font-weight:600}

/* 提示条 */
.flagline{display:flex;gap:9px;align-items:flex-start;padding:10px 13px;border-radius:8px;margin-top:12px;font-size:12px;line-height:1.8}
.flagline.gold{background:var(--amber-t);border:1px solid var(--amber-b);color:#7a5510}
.flagline.jade{background:var(--green-t);border:1px solid var(--green-b);color:#0c6b47}
.flagline.red{background:var(--red-t);border:1px solid var(--red-b);color:#8f2730}
.flagline b{color:var(--ink);font-weight:600}

/* 四诊 */
.tcm{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tcm .q{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px}
.tcm .q.wide{grid-column:1/-1}
.tcm .q h5{font-size:10.5px;letter-spacing:1.2px;color:var(--sub);font-weight:600;margin-bottom:7px}
.tcm .q p{font-size:12.8px;color:#3c4a63;line-height:1.9}
.tcm .q.tongue p,.tcm .q.pulse p{font-family:var(--serif);font-size:16px;color:var(--ink);letter-spacing:1px}

/* 矛盾 */
.conf{padding:14px 16px;border-radius:10px;border:1px solid var(--amber-b);background:var(--amber-t);margin-bottom:12px}
.conf h5{font-size:12.5px;color:#7a5510;margin-bottom:8px;display:flex;gap:7px;align-items:center}
.conf .rowl{font-size:12.5px;line-height:1.9;color:#6f5622}
.conf .rowl b{color:var(--ink);font-weight:600}
.conf .rowl i{font-style:normal;color:#0c6b47}
.conf-ok{padding:14px 16px;border-radius:10px;border:1px solid var(--green-b);background:var(--green-t);font-size:12.5px;line-height:1.9;color:#0c6b47}

/* 推演 */
.methodbar{display:flex;align-items:center;gap:16px;padding:12px 16px;border-radius:10px;margin-bottom:12px;background:#f7faff;border:1px solid #d7e4fa;flex-wrap:wrap}
.methodbar .mi{font-size:11px;color:var(--sub)}
.methodbar .mv{font-size:15px;font-weight:700;color:var(--ink)}
.methodbar .arr{color:var(--blue);font-size:15px}
.engs{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.eng{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px 15px;transition:.15s}
.eng:hover{border-color:#b9d0f5;box-shadow:0 2px 8px rgba(29,106,229,.08)}
.eng h5{font-size:13px;font-weight:700;display:flex;align-items:center;gap:7px;margin-bottom:6px;color:var(--ink)}
.eng h5 .p{font-family:var(--mono);font-size:9.5px;color:#9aa8bd;font-weight:400}
.eng h5 .lead{font-size:9px;padding:1px 6px;border-radius:4px;background:var(--amber-t);color:var(--amber);font-family:var(--mono);letter-spacing:.4px;margin-left:auto}
.eng p{font-size:12px;color:var(--sub);line-height:1.85}

/* 处方表 */
.rx{width:100%;border-collapse:collapse;font-size:12.5px}
.rx th{text-align:left;font-size:10.5px;letter-spacing:.8px;color:var(--sub);font-weight:600;padding:0 8px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
.rx td{padding:7px 8px;border-bottom:1px solid var(--line)}
.rx tr:last-child td{border-bottom:0}
.rx .nm{font-size:13.5px;color:var(--ink);font-weight:600}
.rx .nm small{font-size:9.5px;color:var(--red);margin-left:6px;font-family:var(--sans)}
.rx .dg{font-family:var(--mono);color:#3c4a63;font-size:12.5px}
.rx .rl{font-size:10.5px;padding:1px 8px;border-radius:4px;display:inline-block;font-weight:500}
.rl[data-r="君"]{background:var(--amber-t);color:var(--amber);border:1px solid var(--amber-b)}
.rl[data-r="臣"]{background:var(--blue-t);color:var(--blue);border:1px solid var(--blue-b)}
.rl[data-r="佐"]{background:var(--green-t);color:var(--green);border:1px solid var(--green-b)}
.rl[data-r="使"]{background:#f0f3f8;color:var(--sub);border:1px solid var(--line)}
.rx .dc{font-size:11px;color:#0c6b47}
.rx .dc.no{color:var(--red)}
.rx .rm{text-align:right;color:var(--sub);font-size:11px}
.rx .new{animation:pop .5s ease}
@keyframes pop{from{background:var(--blue-t)}to{background:transparent}}

/* 引擎审计结果 */
.sendzone{margin-top:14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.lamps{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:13px}
.lamp{border:1px solid var(--line);border-radius:8px;padding:7px 2px 5px;text-align:center;background:#fff;transition:.2s}
.lamp .b{width:9px;height:9px;border-radius:50%;margin:0 auto 5px;background:#e3e9f2;border:1px solid #d4dded;transition:.2s}
.lamp .n{font-size:9.5px;color:var(--sub);letter-spacing:.3px}
.lamp .c{font-family:var(--mono);font-size:10px;color:#9aa8bd;margin-top:1px}
.lamp.hot,.lamp.red{border-color:var(--red-b);background:var(--red-t)}
.lamp.hot .b,.lamp.red .b{background:var(--red);border-color:var(--red)}
.lamp.hot .n,.lamp.hot .c,.lamp.red .n,.lamp.red .c{color:var(--red)}
.lamp.amber{border-color:var(--amber-b);background:var(--amber-t)}
.lamp.amber .b{background:#d5911f;border-color:#d5911f}
.lamp.amber .n,.lamp.amber .c{color:var(--amber)}
.blk{border:1px solid var(--red-b);background:#fffafa;border-radius:10px;padding:11px 13px;margin-bottom:9px;animation:slideIn .28s ease}
.blk.amber{border-color:var(--amber-b);background:#fffdf7}
.blk .rc{font-family:var(--mono);font-size:10.5px;color:var(--red);letter-spacing:.2px;display:flex;gap:7px;align-items:center}
.blk.amber .rc{color:var(--amber)}
.blk .rc em{font-style:normal;font-size:9px;padding:1px 6px;border-radius:4px;background:var(--red-t);color:var(--red);margin-left:auto}
.blk.amber .rc em{background:var(--amber-t);color:var(--amber)}
.blk .ms{font-size:12.2px;color:var(--ink);line-height:1.8;margin-top:5px}
.blk .it{font-size:10.5px;color:var(--sub);margin-top:4px;font-family:var(--mono)}
@keyframes slideIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.warnbox{border:1px solid var(--amber-b);background:#fffdf7;border-radius:10px;padding:10px 13px;margin-bottom:9px}
.warnbox .rc{font-family:var(--mono);font-size:10.5px;color:var(--amber)}
.warnbox .ms{font-size:12px;color:#6f5622;line-height:1.8;margin-top:4px}
.citebox{border-left:3px solid #d9c9a6;padding:9px 0 9px 12px;margin-top:12px;background:linear-gradient(90deg,#fdfaf2,transparent)}
.citebox .src{font-family:var(--serif);font-size:12.5px;color:#8a6f3c;letter-spacing:.4px;margin-bottom:3px}
.citebox .cl{font-family:var(--serif);font-size:12.2px;color:#4a4132;line-height:1.95}
.citebox .none{font-size:11.5px;color:var(--sub);line-height:1.8}
.citebox .flag{font-family:var(--sans);font-size:9px;padding:1px 6px;border-radius:4px;margin-left:6px;background:var(--amber-t);color:var(--amber)}
.v-line{font-family:var(--mono);font-size:10px;margin-top:7px;color:#9aa8bd;letter-spacing:.2px}
.v-line b{color:var(--red)}
.v-line.ok{color:var(--green)}

/* 处置卡 */
.fixcard{border:1px solid var(--red-b);border-radius:10px;padding:15px 17px;margin-top:14px;background:#fffaf9}
.fixcard h5{font-size:13px;color:var(--red);margin-bottom:6px;font-weight:700}
.fixcard p{font-size:12.3px;color:#4a3234;line-height:1.9;margin-bottom:11px}
.fixcard .why{font-size:11.5px;color:#4a3a3c;line-height:1.85;border-left:3px solid var(--red-b);padding-left:10px;margin-bottom:12px}

/* 签发 */
.signbox{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sig{background:linear-gradient(150deg,#f2fbf7,#fdfefe);border:1px solid var(--green-b);border-radius:10px;padding:16px 18px}
.sig h5{font-size:11px;letter-spacing:1.2px;color:var(--green);margin-bottom:9px;font-weight:600}
.sig .who{font-family:var(--serif);font-size:26px;color:var(--ink);letter-spacing:4px;margin-bottom:4px}
.sig .det{font-size:11.5px;color:var(--sub);line-height:1.85}
.sig .stamp{display:inline-block;margin-top:8px;font-size:10px;padding:2px 9px;border-radius:4px;border:1px solid var(--green-b);color:var(--green);letter-spacing:.6px;background:#fff;font-weight:600}
.rpt{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px}
.rpt h5{font-size:11px;letter-spacing:1.2px;color:var(--sub);margin-bottom:9px;font-weight:600}
.rpt p{font-size:12.5px;color:#3c4a63;line-height:2}
.rpt .rem{margin-top:11px;padding-top:10px;border-top:1px dashed var(--line)}
.rpt .rem li{list-style:none;font-size:12px;color:var(--amber);padding:2px 0 2px 14px;position:relative}
.rpt .rem li::before{content:"·";position:absolute;left:3px;color:var(--amber);font-weight:700}
.nodose{font-size:10.5px;color:#9aa8bd;margin-top:9px;letter-spacing:.2px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}

/* 球体卡片 */
.sph-wrap{position:relative;height:300px;background:#f7faff;border:1px solid #dbe7fa;border-radius:10px;overflow:hidden}
.sph-wrap canvas{width:100%;height:100%;display:block;cursor:grab}
.sph-wrap canvas:active{cursor:grabbing}
.orb-badge2{position:absolute;top:8px;right:10px;font-size:10px;color:#7d8ea6;background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:4px;padding:3px 8px;line-height:1.5;text-align:right}
.orb-hint2{position:absolute;left:10px;right:10px;bottom:8px;font-size:11px;color:#4a6a93;background:rgba(255,255,255,.88);border-left:3px solid var(--blue);border-radius:0 4px 4px 0;padding:4px 8px;line-height:1.6}
.tg2{font-size:11.5px;padding:4px 11px;border:1px solid var(--line);background:#fff;color:var(--sub);border-radius:5px;cursor:pointer;transition:.15s;font-weight:500}
.tg2.on{background:var(--blue-t);border-color:#9fc0f2;color:var(--blue);font-weight:700}
.tg2:hover:not(.on){border-color:#b9d0f5;color:var(--blue)}
.sph-cap{font-size:11.5px;color:var(--sub);margin-top:8px}

/* 提示条 */
#toast{position:fixed;left:50%;top:130px;transform:translate(-50%,-12px);z-index:99;background:#fff;border:1px solid var(--line);color:var(--ink);font-size:13px;padding:10px 22px;border-radius:9px;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow)}
#toast.on{opacity:1;transform:translate(-50%,0)}

/* ── 资质档案 ───────────────────────────────────────── */
/* 资质档案入口：默认中性（演示态不催人），.ok 绿＝已齐备，.warn 红＝正式版缺件 */
.cred-btn{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;padding:6px 14px;border-radius:7px;border:1px solid var(--line);background:#f8fafc;color:var(--sub);transition:.15s;white-space:nowrap}
.cred-btn i{font-style:normal;font-size:13px}
.cred-btn b{font-family:var(--mono);font-weight:700;color:var(--ink)}
.cred-btn.ok{border-color:var(--green-b);background:var(--green-t);color:var(--green)}
.cred-btn.ok b{color:var(--green)}
.cred-btn.warn{border-color:var(--red-b);background:var(--red-t);color:var(--red)}
.cred-btn.warn b{color:var(--red)}
.cred-btn:hover{filter:brightness(.97)}
#credPanel{position:fixed;inset:0;z-index:90;background:rgba(23,35,59,.45);backdrop-filter:blur(3px);display:none;align-items:flex-start;justify-content:center;padding:44px 20px;overflow:auto}
#credPanel.on{display:flex}
.cp-box{width:min(960px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow);overflow:hidden;animation:fin .25s}
.cp-head{display:flex;align-items:center;gap:12px;padding:15px 22px;border-bottom:1px solid var(--line);background:#f7f9fc}
.cp-head b{font-size:16px;letter-spacing:1px}
.cp-head span{font-size:11.5px;color:var(--sub)}
.cp-x{margin-left:auto;width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:#fff;color:var(--sub);font-size:13px;cursor:pointer;transition:.15s}
.cp-x:hover{border-color:var(--red-b);color:var(--red)}
.cp-body{padding:6px 22px 24px;max-height:calc(100vh - 190px);overflow:auto}
.cp-sec{font-size:12px;font-weight:700;color:var(--blue);letter-spacing:1.2px;margin:16px 0 10px}
.cp-sec small{font-weight:400;color:var(--sub);letter-spacing:0;margin-left:8px}
.cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cp-item{border:1px solid var(--line);border-radius:10px;padding:13px 15px;background:#fff;transition:.15s}
.cp-item.missing{border-style:dashed;border-color:#c9d4e5}
.cp-item.expired{border-color:var(--red-b);background:#fffafa}
.cp-item.done{border-color:#cfe6d8}
.cp-top{display:flex;align-items:center;gap:8px}
.cp-top b{font-size:13px;color:var(--ink)}
.cp-hold{font-size:11px;color:var(--sub);margin:3px 0 9px}
.cp-drop{border:1.5px dashed #c3cfe2;border-radius:9px;padding:20px 10px;text-align:center;color:var(--sub);font-size:12.5px;cursor:pointer;transition:.15s;background:#fafbfd;user-select:none}
.cp-drop:hover,.cp-drop.over{border-color:var(--blue);background:var(--blue-t);color:var(--blue)}
.cp-drop span{display:block;font-size:10.5px;color:#9aa8bd;margin-top:4px}
.cp-drop.over span{color:var(--blue)}
.cp-thumb{height:118px;border:1px solid var(--line);border-radius:8px;background:#f6f8fb;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}
.cp-thumb:hover{border-color:#b9d0f5}
.cp-thumb img{max-width:100%;max-height:100%;object-fit:contain}
.cp-thumb.pdf{font-size:28px;flex-direction:column;gap:2px}
.cp-thumb.pdf span{font-size:10px;color:var(--sub);font-family:var(--mono)}
.cp-meta{font-size:10.5px;color:#66788f;margin-top:7px;font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-exp{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--sub);margin-top:8px}
.cp-exp input{border:1px solid var(--line);border-radius:6px;padding:3px 7px;font-size:11.5px;color:var(--ink);font-family:inherit;background:#fff}
.cp-exp input.bad{border-color:var(--red-b);color:var(--red)}
.cp-acts{display:flex;gap:8px;margin-top:9px}
.btn.sm.danger{border-color:var(--red-b);color:var(--red)}
.btn.sm.danger:hover{background:var(--red-t)}

/* ── 窄屏 ───────────────────────────────────────────── */
@media (max-width:1280px){
  #guide{width:264px}
  #audit{right:264px}
}
@media (max-width:1080px){
  #side{width:190px}
  #audit{left:190px}
  .tcm,.engs,.signbox,.two{grid-template-columns:1fr}
}
@media (max-width:880px){
  body{overflow:auto}
  #wrap{height:auto;display:block}
  #side{width:auto;border-right:0;border-bottom:1px solid var(--line)}
  #navs{display:flex;flex-wrap:wrap;gap:6px}
  #side .case{margin-top:10px}
  #guide{border-left:0;border-top:1px solid var(--line);width:auto}
  #gtell{overflow:visible}
  #audit{display:none}
  #main{padding-bottom:24px}
  .sph-wrap{height:260px}
  .cp-grid{grid-template-columns:1fr}
  #top{flex-wrap:wrap;height:auto;padding:8px 14px;row-gap:6px}
  #credPanel{padding:16px 10px}
}

/* ═══════════════════════════════════════════════════════════
   就诊记录 · 数据统计 · 打印（v6 增补）
   ═══════════════════════════════════════════════════════════ */

/* 顶栏按钮组 */
#top .clinic{flex:1}
#top .cred-btn{margin-left:0}
#top .cred-btn.sys{border-color:var(--blue-b);background:var(--blue-t);color:var(--blue)}

/* ── 两个浮层面板共用骨架 ── */
#recPanel,#statPanel{position:fixed;inset:0;z-index:92;background:rgba(23,35,59,.45);backdrop-filter:blur(3px);
  display:none;align-items:flex-start;justify-content:center;padding:40px 20px;overflow:auto}
#recPanel.on,#statPanel.on{display:flex}
.rc-box{width:min(1200px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow);
  overflow:hidden;animation:fin .25s;display:flex;flex-direction:column;max-height:calc(100vh - 80px)}
.rc-body{display:flex;min-height:0;flex:1}

/* 左：列表 */
.rc-side{width:392px;flex:none;border-right:1px solid var(--line);display:flex;flex-direction:column;
  background:var(--panel2);min-height:0}
.rc-tools{padding:12px 14px;border-bottom:1px solid var(--line);background:#fff;flex:none}
#recQ{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 11px;font-size:12.5px;
  font-family:inherit;color:var(--ink);outline:none;transition:.15s}
#recQ:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-t)}
.rc-tabs{display:flex;gap:5px;margin-top:9px;flex-wrap:wrap}
.rc-tabs button{font-size:11.5px;padding:4px 11px;border-radius:6px;border:1px solid var(--line);
  background:#fff;color:var(--sub);font-weight:500;transition:.15s}
.rc-tabs button:hover{border-color:#b9d0f5;color:var(--blue)}
.rc-tabs button.on{background:var(--blue-t);border-color:var(--blue-b);color:var(--blue);font-weight:700}
.rc-list{overflow:auto;padding:10px 12px;flex:1;min-height:0}
.rc-item{border:1px solid var(--line);border-radius:9px;padding:10px 12px;margin-bottom:8px;
  background:#fff;cursor:pointer;transition:.15s}
.rc-item:hover{border-color:#b9d0f5;box-shadow:0 2px 8px rgba(29,106,229,.08)}
.rc-item.on{border-color:var(--blue);background:#f0f6ff;box-shadow:0 2px 10px rgba(29,78,216,.12)}
.rc-item .r1{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink)}
.rc-item .r1 .d{margin-left:auto;font-size:10.5px;color:var(--sub);font-family:var(--mono);font-weight:400}
.rc-item .r2{font-size:11.5px;color:var(--sub);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-item .r3{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap}
.rc-empty{text-align:center;color:var(--sub);font-size:12.5px;padding:40px 10px;line-height:1.9}

/* 右：详情 */
.rc-detail{flex:1;overflow:auto;padding:20px 24px;min-width:0}
.rd-head{display:flex;align-items:flex-start;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.rd-ava{width:46px;height:46px;border-radius:11px;background:linear-gradient(135deg,#0f2c73,#1d4ed8);
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:700;flex:none}
.rd-name{font-size:19px;font-weight:800;color:var(--ink);letter-spacing:.5px}
.rd-meta{font-size:11.5px;color:var(--sub);margin-top:3px;line-height:1.7}
.rd-act{margin-left:auto;display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.rd-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.rd-f{border:1px solid var(--line);border-radius:9px;padding:10px 13px;background:#fff}
.rd-f h6{font-size:10.5px;color:var(--sub);letter-spacing:1.2px;font-weight:600;margin-bottom:4px}
.rd-f p{font-size:12.5px;color:#3c4a63;line-height:1.8}
.rd-f.wide{grid-column:1/-1}
.rd-sec{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:1.4px;margin:20px 0 9px;
  display:flex;align-items:center;gap:8px}
.rd-sec::after{content:"";flex:1;height:1px;background:var(--line)}
.rd-tl{position:relative;padding-left:18px;margin-top:4px}
.rd-tl::before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:1px;background:var(--line)}
.rd-tl .tl{position:relative;font-size:12.3px;color:#3c4a63;line-height:1.9;padding:3px 0}
.rd-tl .tl::before{content:"";position:absolute;left:-17px;top:10px;width:7px;height:7px;border-radius:50%;
  background:#fff;border:1.5px solid var(--blue-b)}
.rd-tl .tl.ok::before{background:var(--green);border-color:var(--green)}
.rd-tl .tl.bad::before{background:var(--red);border-color:var(--red)}
.rd-tl .tl em{font-style:normal;font-family:var(--mono);font-size:10.5px;color:var(--sub);margin-right:7px}

/* ── 数据统计 ── */
.st-box{width:min(1060px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow);
  overflow:hidden;animation:fin .25s}
.st-body{padding:4px 24px 26px;overflow:auto;max-height:calc(100vh - 150px)}
.st-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.st-kpi{border:1px solid var(--line);border-radius:11px;padding:14px 16px;
  background:linear-gradient(160deg,#f7faff,#fff)}
.st-kpi b{display:block;font-size:31px;font-weight:800;color:var(--blue);line-height:1.1;
  font-family:var(--mono);letter-spacing:-1px}
.st-kpi span{font-size:11.5px;color:var(--sub);display:block;margin-top:4px}
.st-kpi em{font-style:normal;font-size:10.5px;color:#9aa8bd;display:block;margin-top:2px;font-family:var(--mono)}
.st-kpi.g b{color:var(--green)}.st-kpi.r b{color:var(--red)}.st-kpi.a b{color:var(--amber)}
.st-sec{font-size:12px;font-weight:700;color:var(--blue);letter-spacing:1.2px;margin:24px 0 11px;
  display:flex;align-items:center;gap:9px}
.st-sec small{font-weight:400;color:var(--sub);letter-spacing:0;font-size:11px}
.st-sec::after{content:"";flex:1;height:1px;background:var(--line)}
.st-bars{display:flex;flex-direction:column;gap:9px}
.st-bar{display:flex;align-items:center;gap:10px;font-size:12px}
.st-bar .k{width:120px;flex:none;color:#3c4a63}
.st-bar .track{flex:1;height:15px;border-radius:5px;background:#eef2f7;overflow:hidden}
.st-bar .fill{height:100%;border-radius:5px;background:linear-gradient(90deg,#1d4ed8,#4d8bff);transition:width .5s}
.st-bar.red .fill{background:linear-gradient(90deg,#a3282f,#c5303c)}
.st-bar.jade .fill{background:linear-gradient(90deg,#0f8a5f,#15803d)}
.st-bar .v{width:56px;text-align:right;font-family:var(--mono);color:var(--sub);font-size:11.5px}
.st-trend{display:flex;align-items:flex-end;gap:12px;height:136px;padding:0 4px 0;border-bottom:1px solid var(--line)}
.st-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%}
.st-col .vv{font-size:11px;font-weight:700;color:var(--blue);font-family:var(--mono)}
.st-col .bar{width:100%;max-width:40px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#4d8bff,#1d4ed8);min-height:2px}
.st-col .lb{font-size:10.5px;color:var(--sub);padding-top:6px;white-space:nowrap}
.st-two{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.st-note{font-size:11px;color:#9aa8bd;margin-top:14px;line-height:1.8}

/* ── 打印：只印单据，不印工位 ── */
#printArea{display:none}
@media print{
  #gfoot{display:none!important}
  @page{size:A4;margin:13mm}
  html,body{height:auto;overflow:visible;background:#fff}
  body.printing>*{display:none!important}
  body.printing #printArea{display:block!important}
  #printArea .sheet{color:#000;font-size:12px;line-height:1.85;font-family:var(--sans)}
  #printArea .sheet+.sheet{page-break-before:always}
  #printArea .sp-head{text-align:center;padding-bottom:9px;border-bottom:2px solid #000;margin-bottom:13px}
  #printArea .sp-head h3{font-size:20px;letter-spacing:3px;font-family:var(--serif)}
  #printArea .sp-head .sub{font-size:11px;color:#333;margin-top:3px;letter-spacing:1px}
  #printArea .sp-tag{display:inline-block;margin-top:6px;font-size:12px;font-weight:700;
    border:1px solid #000;border-radius:3px;padding:1px 14px;letter-spacing:2px}
  #printArea .sp-info{display:flex;flex-wrap:wrap;font-size:11.5px;margin-bottom:10px;
    border:1px solid #999;border-bottom:0}
  #printArea .sp-info span{width:50%;padding:5px 10px;border-bottom:1px solid #999;box-sizing:border-box}
  #printArea .sp-info span:nth-child(odd){border-right:1px solid #999}
  #printArea .sp-tbl{width:100%;border-collapse:collapse;font-size:11.5px;margin-top:6px}
  #printArea .sp-tbl th{border:1px solid #999;background:#f2f2f2;padding:5px 8px;font-weight:700;text-align:left}
  #printArea .sp-tbl td{border:1px solid #999;padding:5px 8px;vertical-align:top}
  #printArea .sp-h{font-size:12px;font-weight:700;margin:13px 0 5px;letter-spacing:1px}
  #printArea .sp-p{font-size:11.5px;line-height:1.9;margin-bottom:5px}
  #printArea .sp-sign{display:flex;justify-content:flex-end;gap:40px;margin-top:26px;font-size:12px}
  #printArea .sp-sign .line{border-bottom:1px solid #000;min-width:150px;display:inline-block}
  #printArea .sp-foot{margin-top:16px;padding-top:8px;border-top:1px dashed #999;font-size:10px;color:#444;line-height:1.7}
}

/* ══════════════════════════════════════════════════════════════
   典籍背书 · 推演链 · 六闸逐闸背书 · 单据预览
   ══════════════════════════════════════════════════════════════ */
.bkcard{margin-top:12px}
.bk-note{margin-left:auto;font-weight:400;font-size:10.5px;color:#9aa8bd;letter-spacing:0}
.bk{border:1px solid #e9e0cc;border-left:3px solid #d9c9a6;border-radius:8px;background:#fffdf7;
  padding:9px 12px;margin-top:8px;transition:.15s}
.bk:hover{background:#fffcf1}
.bk-h{display:flex;align-items:center;gap:8px;cursor:pointer;flex-wrap:wrap}
.bk-src{font-family:var(--serif);font-size:12.8px;color:#8a6f3c;letter-spacing:.3px;font-weight:600}
.bk-flag{font-size:9px;padding:1px 6px;border-radius:4px;background:var(--amber-t);color:var(--amber);font-family:var(--mono)}
.bk-more{margin-left:auto;font-size:10.5px;color:#b09b74}
.bk-cl{font-family:var(--serif);font-size:12.6px;color:#4a4132;line-height:1.95;margin-top:5px;
  padding-left:10px;border-left:1px dashed #e3d8c2}
.bk-body{display:none;margin-top:8px}
.bk.open .bk-body{display:block}
.bk-why{font-size:11.8px;color:#6f6449;line-height:1.85}
.bk-why b{display:block;font-size:10px;letter-spacing:1.2px;color:#a08b5f;margin-bottom:2px}
.bk-edge{margin-top:6px;font-size:11.3px;line-height:1.8;color:#8f2730;background:var(--red-t);
  border:1px solid var(--red-b);border-radius:6px;padding:6px 9px}
.bk-edge b{display:block;font-size:10px;letter-spacing:1.2px;margin-bottom:2px}
.bk-foot{font-size:11px;color:#9aa8bd;line-height:1.8;margin-top:10px}

/* 推演链 */
.chain{display:flex;align-items:stretch;overflow-x:auto;padding:2px 0 4px}
.ch{flex:1;min-width:118px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}
.ch-k{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--blue);letter-spacing:1px}
.ch-v{font-size:11.6px;color:var(--ink);line-height:1.7;margin-top:4px;font-weight:600}
.ch-s{font-size:10px;color:#a08b5f;font-family:var(--serif);margin-top:6px;line-height:1.65;
  border-top:1px dashed #eae0cd;padding-top:5px}
.ch-i{font-size:10px;color:#9aa8bd;margin-top:3px}
.ch-ar{display:flex;align-items:center;justify-content:center;width:16px;color:#c3cfe2;font-size:17px;flex:none}

/* 引擎卡内背书 */
.eg-b{margin-top:8px;padding-top:7px;border-top:1px dashed var(--line);font-size:10.8px;line-height:1.75;color:#8a7a58}
.eg-src{font-family:var(--serif);color:#8a6f3c;font-weight:600}
.eg-cl{display:block;font-family:var(--serif);color:#5c5442;margin-top:2px;line-height:1.85}
.eg-w{display:block;color:#7c8aa0;margin-top:3px}
.eg-e{display:block;color:#8f2730;margin-top:2px}

/* 六闸逐闸背书 */
.gbs{display:grid;grid-template-columns:1fr 1fr;gap:9px}

/* 依据折叠区：默认收起，医师要看再展开（抓主线纪律） */
.evfold{margin-top:14px;border:1px solid var(--line);border-radius:8px;background:#fcfdff}
.evfold>summary{cursor:pointer;padding:10px 13px;font-size:12px;font-weight:600;color:var(--sub);list-style:none;display:flex;align-items:center;gap:8px}
.evfold>summary::-webkit-details-marker{display:none}
.evfold>summary::before{content:'▸';color:var(--pri);transition:.15s}
.evfold[open]>summary::before{content:'▾'}
.evfold>summary i{font-style:normal;font-weight:400;font-size:11px;opacity:.75}
.evfold>summary:hover{color:var(--pri)}
.evfold[open]>summary{border-bottom:1px dashed var(--line)}
.gb{border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:#fcfdff}
.gb.hit{border-color:var(--red-b);background:#fffaf9}
.gb-h{display:flex;align-items:center;gap:7px}
.gb-h b{font-size:12px;color:var(--ink)}
.gb-n{margin-left:auto;font-size:10px;color:var(--sub);font-family:var(--mono)}
.gb.hit .gb-n{color:var(--red)}
.gb-s{font-family:var(--serif);font-size:10.8px;color:#8a6f3c;margin-top:3px}
.gb-c{font-family:var(--serif);font-size:11px;color:#4a4132;line-height:1.8;margin-top:2px}
.gb-w{font-size:10.8px;color:#7c8aa0;line-height:1.7;margin-top:3px}
.gb-e{font-size:10.5px;color:#8f2730;line-height:1.7;margin-top:2px}

/* 记录详情里的背书条 */
.rd-quote{margin-top:10px;border-left:3px solid #d9c9a6;background:linear-gradient(90deg,#fdfaf2,transparent);
  padding:8px 12px}
.rq-src{font-family:var(--serif);font-size:11.8px;color:#8a6f3c}
.rq-cl{font-family:var(--serif);font-size:11.8px;color:#4a4132;line-height:1.9;margin-top:2px}

/* 五张单据按钮 */
.sheetgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:9px}
.shbtn{text-align:left;border:1px solid var(--line);border-radius:9px;padding:10px 12px;background:#fff;
  cursor:pointer;transition:.15s;font-family:inherit}
.shbtn:hover{border-color:#b9d0f5;box-shadow:0 2px 8px rgba(29,106,229,.08);transform:translateY(-1px)}
.shbtn b{display:block;font-size:12.5px;color:var(--ink)}
.shbtn span{display:block;font-size:10.5px;color:var(--sub);margin-top:3px;line-height:1.6}
.shbtn:first-child{border-color:var(--blue-b);background:#f7faff}
.shbtn:first-child b{color:var(--blue)}

/* 单据预览浮层 */
#sheetPanel{position:fixed;inset:0;z-index:95;background:rgba(23,35,59,.55);backdrop-filter:blur(3px);
  display:none;align-items:flex-start;justify-content:center;padding:30px 18px;overflow:auto}
#sheetPanel.on{display:flex}
.sh-box{width:min(880px,100%);background:#e9eef5;border-radius:14px;box-shadow:var(--shadow);
  overflow:hidden;animation:fin .25s;display:flex;flex-direction:column;max-height:calc(100vh - 60px)}
.sh-box .cp-head{background:#fff}
.sh-box .cp-head b{font-size:15px}
.sh-box .cp-head .btn{margin-left:auto}
.sh-box .cp-head .cp-x{margin-left:6px}
.sh-body{overflow:auto;padding:18px}

/* 预览面板顶部切换条：五张同一份数据 */
.sh-kinds{display:flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:760px;margin:0 auto 14px}
.sh-kinds .sk-t{font-size:11px;color:var(--sub);margin-right:2px}
.sh-kinds .sk-b{border:1px solid var(--line);background:#fff;border-radius:15px;padding:4px 12px;
  font-size:12px;color:var(--ink);cursor:pointer;transition:all .15s}
.sh-kinds .sk-b:hover{border-color:var(--pri);color:var(--pri)}
.sh-kinds .sk-b.on{background:var(--pri);border-color:var(--pri);color:#fff;font-weight:600}

/* 屏幕上的纸面（与打印版式同源） */
.sh-body .sheet{background:#fff;border-radius:5px;box-shadow:0 2px 14px rgba(23,35,59,.13);
  padding:26px 30px 22px;max-width:760px;margin:0 auto;color:#1b2432;font-size:12px;line-height:1.85}
.sh-body .sheet.draft{box-shadow:0 2px 14px rgba(163,40,47,.18)}
.sh-body .sp-head{text-align:center;padding-bottom:9px;border-bottom:2px solid #1b2432;margin-bottom:13px}
.sh-body .sp-head h3{font-size:20px;letter-spacing:3px;font-family:var(--serif)}
.sh-body .sp-head .sub{font-size:11px;color:#47536a;margin-top:3px;letter-spacing:1px}
.sh-body .sp-tag{display:inline-block;margin-top:7px;font-size:12px;font-weight:700;
  border:1px solid #1b2432;border-radius:3px;padding:1px 14px;letter-spacing:2px}
.sh-body .sp-no{font-size:10px;color:#5b6779;font-family:var(--mono);margin-top:5px}
.sh-body .sp-info{display:flex;flex-wrap:wrap;font-size:11.5px;margin-bottom:10px;border:1px solid #b8c0cc}
.sh-body .sp-info span{width:50%;padding:5px 10px;border-bottom:1px solid #b8c0cc;box-sizing:border-box}
.sh-body .sp-info span:nth-child(odd){border-right:1px solid #b8c0cc}
.sh-body .sp-tbl{width:100%;border-collapse:collapse;font-size:11.5px;margin-top:6px}
.sh-body .sp-tbl th{border:1px solid #b8c0cc;background:#f2f5f9;padding:5px 8px;font-weight:700;text-align:left}
.sh-body .sp-tbl td{border:1px solid #b8c0cc;padding:5px 8px;vertical-align:top}
.sh-body .sp-h{font-size:12px;font-weight:700;margin:14px 0 5px;letter-spacing:1px;
  border-left:3px solid #1d4ed8;padding-left:7px}
.sh-body .sp-p{font-size:11.5px;line-height:1.9;margin-bottom:5px;color:#26303f}
.sh-body .sp-sign{display:flex;justify-content:flex-end;gap:40px;margin-top:26px;font-size:12px;color:#26303f}
.sh-body .sp-sign .line{border-bottom:1px solid #1b2432;min-width:140px;display:inline-block}
.sh-body .sp-foot{margin-top:16px;padding-top:8px;border-top:1px dashed #b8c0cc;font-size:10px;color:#5b6779;line-height:1.7}

/* 单据内的公共块 */
.sp-draft{text-align:center;font-size:10.5px;letter-spacing:2px;color:#a3282f;border:1px dashed #d9a5a5;
  background:#fff8f8;padding:3px 0;margin:0 0 10px;border-radius:3px}
.sp-quote{border:1px solid #ddd0b4;border-left:3px solid #d9c9a6;background:#fdfaf2;
  padding:8px 12px;margin:6px 0 4px;border-radius:0 5px 5px 0}
.sp-quote .q-lb{font-size:10px;letter-spacing:1.5px;color:#a08b5f;margin-bottom:2px}
.sp-quote .q-src{font-family:var(--serif);font-size:12px;color:#8a6f3c;font-weight:600}
.sp-quote .q-cl{font-family:var(--serif);font-size:12.2px;color:#3a3428;line-height:1.95;margin-top:3px}
.sp-quote .q-note{font-size:10.8px;color:#7a6d52;line-height:1.8;margin-top:4px}
.sp-quote .q-edge{font-size:10.5px;color:#8f2730;line-height:1.75;margin-top:4px;
  border-top:1px dashed #e3c9c9;padding-top:3px}
.sp-note{font-size:10.5px;color:#5b6779;background:#f6f8fb;border-radius:4px;padding:5px 9px;margin-top:9px}
/* 层间承接条：每层末尾交代「交给下一层什么」，下一层拿它做什么。
   2026-11-12 用户定：四层之间要有逻辑关系，不能各说各话——这条就是那根线。 */
.sp-bridge{font-size:11px;line-height:1.8;color:#2f4438;background:#eef5f0;border-left:3px solid #6f9a86;
  border-radius:0 4px 4px 0;padding:6px 10px;margin-top:9px}
.sp-bridge b{color:#1f3a2c}
@media print{#printArea .sp-bridge{background:#f2f7f3!important;-webkit-print-color-adjust:exact}}
.sp-q{font-family:var(--serif);font-size:11.5px;color:#3a3428;line-height:1.9;padding:3px 0 3px 9px;
  border-left:2px solid #e3d8c2;margin:2px 0 4px}
.sp-flag{font-size:10px;padding:1px 5px;border:1px solid #d9c9a6;border-radius:3px;color:#8a6f3c}
.sp-sub{margin-top:4px;padding-top:4px;border-top:1px dashed #d3dae5;
  font-size:10.6px;line-height:1.85;color:#4a5568}
.sp-sub b{color:#26303f;font-weight:600}
.sp-dim{color:#7b8798;font-style:normal}

/* 打印：单据新增块 */
@media print{
  body.printing #sheetPanel{display:none!important}
  #printArea .sp-draft{text-align:center;font-size:10.5px;letter-spacing:2px;color:#a3282f;
    border:1px dashed #c99;padding:2px 0;margin-bottom:9px}
  #printArea .sp-no{text-align:center;font-size:9.5px;color:#333;margin-top:4px}
  #printArea .sp-h{border-left:0;padding-left:0}
  #printArea .sp-quote{border:1px solid #999;border-left:3px solid #666;background:#fafafa;
    padding:6px 10px;margin:5px 0}
  #printArea .sp-quote .q-lb{font-size:9px;letter-spacing:1.2px;color:#555}
  #printArea .sp-quote .q-src{font-family:var(--serif);font-size:11px;color:#000}
  #printArea .sp-quote .q-cl{font-family:var(--serif);font-size:11.5px;line-height:1.9}
  #printArea .sp-quote .q-note{font-size:10px;color:#333;line-height:1.75}
  #printArea .sp-quote .q-edge{font-size:10px;color:#000;margin-top:3px;border-top:1px dashed #999}
  #printArea .sp-note{font-size:9.5px;border:1px solid #999;padding:4px 8px;margin-top:7px;color:#333}
  #printArea .sp-q{font-family:var(--serif);font-size:11px;line-height:1.85;border-left:2px solid #999;
    padding-left:8px;margin:2px 0 4px}
  #printArea .sp-flag{font-size:9px;border:1px solid #666;padding:0 4px}
}

@media (max-width:980px){
  .gbs{grid-template-columns:1fr}
  .chain{flex-direction:column;gap:4px}
  .ch-ar{display:none}
  .sh-body .sheet{padding:18px 16px}
  .sh-body .sp-info span{width:100%}
  .sh-body .sp-info span:nth-child(odd){border-right:0}
}
.sh-box .cp-head .sh-tip{margin-left:auto;font-size:10.5px;color:var(--sub);letter-spacing:.3px;
  background:#f2f5fa;border:1px solid var(--line);border-radius:6px;padding:3px 9px;white-space:nowrap}
.sh-box .cp-head .btn{margin-left:8px}
@media (max-width:700px){.sh-box .cp-head .sh-tip{display:none}}

/* ══════════════════════════════════════════════════════════════
   四诊采集 · 可录入表单
   ══════════════════════════════════════════════════════════════ */
.tcm .q h5{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.tcin{width:100%;border:1px solid #dfe6f0;border-radius:8px;padding:9px 11px;
  font-size:12.8px;line-height:1.85;color:#26303f;font-family:var(--sans);background:#fcfdff;
  outline:none;resize:vertical;transition:.15s;box-sizing:border-box}
.tcin:hover{border-color:#c3d3e8;background:#fff}
.tcin:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px var(--blue-t)}
.tcin::placeholder{color:#a9b4c5;font-size:12px}
.tcin.one{font-family:var(--serif);font-size:16px;letter-spacing:1px;font-weight:600;color:var(--ink)}
.tcm .q.tongue .tcin,.tcm .q.pulse .tcin{font-family:var(--serif);font-size:16px;letter-spacing:1px;
  font-weight:600;color:var(--ink);background:#fffdf7;border-color:#eadfc7}
.tcm .q.tongue .tcin:focus,.tcm .q.pulse .tcin:focus{border-color:#c8ad76;box-shadow:0 0 0 3px #f7efdd}
.fst{font-size:9.5px;font-weight:500;letter-spacing:0;color:#a3562f;background:#fdf3e7;
  border:1px solid #f0dfc4;border-radius:4px;padding:0 5px;line-height:1.7;white-space:nowrap}
.fst.ok{color:#0c6b47;background:var(--green-t);border-color:var(--green-b)}
.fcnt{margin-left:auto;font-size:9.5px;color:#a9b4c5;letter-spacing:0;font-family:var(--mono);
  font-weight:400;white-space:nowrap}
.tcin.need{border-color:var(--red)!important;background:#fff6f6!important;animation:needflash .45s 3}
@keyframes needflash{50%{background:#ffe8e8}}

/* ── 舌脉分项勾选 ─────────────────────────────────────── */
.tm-panel .tm-badge{font-weight:400;font-size:10px;letter-spacing:0;color:var(--gold);
  background:var(--gold-t);border:1px solid var(--gold-b);border-radius:4px;padding:0 6px;line-height:1.8}
.tm-grid{display:flex;flex-direction:column;gap:7px;margin:2px 0 8px}
.tm-row{display:flex;gap:8px;align-items:flex-start}
.tm-lab{flex:0 0 48px;text-align:right;font-size:11px;color:var(--sub);padding-top:6px;
  letter-spacing:.4px;white-space:nowrap}
.tm-req{font-style:normal;font-size:9px;color:var(--gold);background:var(--gold-t);
  border:1px solid var(--gold-b);border-radius:3px;padding:0 3px;margin-left:3px}
.tm-opts{display:flex;flex-wrap:wrap;gap:5px;flex:1;min-width:0}
.tm-chip{font-family:var(--sans);font-size:12.5px;line-height:1.5;padding:4px 10px;border-radius:13px;
  border:1px solid #dfe6f0;background:#fcfdff;color:#3c4a63;transition:.12s;white-space:nowrap}
.tm-chip:hover{border-color:#b9cbe6;background:#fff;color:var(--blue)}
.tm-chip.on{background:var(--blue-d);border-color:var(--blue-d);color:#fff;font-weight:500}
.tm-panel.tongue .tm-chip.on{background:#7d6119;border-color:#7d6119}
.tm-more{margin:2px 0 8px;border-top:1px dashed var(--line);padding-top:7px}
.tm-more summary{font-size:11px;color:#7c8aa3;cursor:pointer;letter-spacing:.3px;list-style:none;user-select:none}
.tm-more summary::before{content:'＋ ';font-weight:600}
.tm-more[open] summary::before{content:'－ '}
.tm-more summary::-webkit-details-marker{display:none}
.tm-sent{margin:6px 0 8px}
.tm-lean{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:7px 10px;
  background:#f7f9fc;border:1px solid var(--line);border-radius:7px}
.tm-tag{font-size:11.5px;color:var(--sub);background:#fff;border:1px solid var(--line);
  border-radius:5px;padding:1px 7px;white-space:nowrap}
.tm-tag b{color:var(--ink);font-weight:600}
.tm-tag i{font-style:normal;font-family:var(--mono);font-size:10px;color:#a3562f;margin-left:2px}
.tm-tag.off{color:#a9b4c5;background:#fbfcfe}
.tm-src{font-size:10.5px;color:#93a0b5;margin-left:auto}
.tm-dash{font-size:11.5px;color:#a9b4c5}
.tm-flags{margin-top:7px;display:flex;flex-direction:column;gap:5px}
.tm-flag{font-size:11.5px;line-height:1.7;padding:5px 9px;border-radius:6px;
  border:1px solid var(--amber-b);background:var(--amber-t);color:#7a5510}
.tm-flag.r{border-color:var(--red-b);background:var(--red-t);color:#8f2730}
.tm-flag b{margin-right:5px;color:var(--ink)}
.tm-note{margin-top:7px;font-size:10.5px;color:#93a0b5;line-height:1.7}
.navrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.navrow .hint{font-size:11px;color:var(--sub);line-height:1.7}
@media (max-width:760px){
  .tcm{grid-template-columns:1fr}
  .tcin{font-size:13px}
}

/* ══════════════════════════════════════════════════════════════
   新建接诊（实操录入）· 组方录入
   ══════════════════════════════════════════════════════════════ */
#newPanel{position:fixed;inset:0;z-index:96;background:rgba(23,35,59,.55);backdrop-filter:blur(3px);
  display:none;align-items:flex-start;justify-content:center;padding:26px 18px;overflow:auto}
#newPanel.on{display:flex}
.np-box{width:min(860px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow);
  overflow:hidden;animation:fin .25s;display:flex;flex-direction:column;max-height:calc(100vh - 52px)}
.np-box .cp-head{background:#fff;border-bottom:1px solid var(--line)}
.np-box .cp-head b{font-size:15px}
.np-body{padding:14px 22px 22px;overflow:auto}
.np-sec{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:1.4px;margin:16px 0 9px;
  display:flex;align-items:center;gap:9px}
.np-sec::after{content:"";flex:1;height:1px;background:var(--line)}
.np-sec:first-child{margin-top:2px}
.np-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.np-f{display:flex;flex-direction:column;gap:4px}
.np-f.wide{grid-column:1/-1;margin-top:10px}
.np-f span{font-size:11px;color:var(--sub);letter-spacing:.6px}
.np-f span i{color:var(--red);font-style:normal}
.np-f input,.np-f select,.np-f textarea{width:100%;border:1px solid #dfe6f0;border-radius:8px;
  padding:8px 10px;font-size:12.8px;font-family:inherit;color:var(--ink);background:#fcfdff;outline:none;
  transition:.15s;box-sizing:border-box;resize:vertical}
.np-f input:focus,.np-f select:focus,.np-f textarea:focus{border-color:var(--blue);background:#fff;
  box-shadow:0 0 0 3px var(--blue-t)}
.np-note{font-size:11px;color:#8a97a8;line-height:1.85;margin-top:14px;background:#f7f9fc;
  border:1px solid var(--line);border-radius:8px;padding:9px 12px}
.np-err{font-size:11.5px;color:var(--red);margin-top:8px;min-height:14px}
.np-body::-webkit-scrollbar{width:7px}
.np-body::-webkit-scrollbar-thumb{background:#d5deea;border-radius:4px}

/* 证候初判 */
.synrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.synwhy{font-size:12px;color:#4a4132;line-height:1.85;margin-top:9px;padding:8px 12px;
  background:#fdfaf2;border-left:3px solid #d9c9a6;border-radius:0 6px 6px 0}
.syn-sug{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:2px 0 10px;
  padding:8px 12px;background:#f2f8f2;border-left:3px solid #9ec89e;border-radius:0 6px 6px 0}
.syn-sug .ss-t{font-size:12px;color:#31502f;line-height:1.7}
.syn-sug .ss-t b{font-weight:700}
.syn-sug .ss-t i{font-style:normal;color:#6b8266;margin-left:6px;font-size:11px}
.syn-sug .ss-n{flex-basis:100%;font-size:10.5px;color:#7d8f79;line-height:1.6}
.syn-sug.dim{background:#f6f5f0;border-left-color:#c9c2ae}
.syn-sug.dim .ss-t{color:#6d675a}

/* 组方录入 */
.rxe{border:1px solid #d7e4fa;background:#f7faff;border-radius:10px;padding:11px 14px;margin-bottom:12px}
.rxe-t{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:1.2px;margin-bottom:9px;
  display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.rxe-t .hint{font-weight:400;letter-spacing:0;color:var(--sub)}
.rxe-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media (max-width:760px){
  .np-grid{grid-template-columns:1fr}
  .rxe-row>*{max-width:none!important;flex:1 1 auto}
}

/* ══════════════════════════════════════════════════════════════════
   五运六气 · 方解 · 单味药性
   ══════════════════════════════════════════════════════════════════ */
.np-hint{font-style:normal;font-size:10px;color:#9aa8bd;margin-left:5px;letter-spacing:0}
.np-yq{margin-top:12px;border:1px solid #d7e4fa;background:#f7faff;border-radius:9px;
  padding:10px 13px;font-size:12px;color:#33415c;line-height:1.85}
.np-yq b{color:var(--blue)}

/* 运气卡 */
.yq-card .yq-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.yq-c{border:1px solid var(--line);border-radius:8px;padding:9px 11px;background:#fcfdff}
.yq-k{font-size:10px;letter-spacing:1.2px;color:#8a97a8;font-weight:600}
.yq-v{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--ink);margin-top:3px;letter-spacing:.5px}
.yq-s{font-size:10.5px;color:#8a97a8;margin-top:4px;line-height:1.65}
.yq-tz{margin-top:10px;border-left:3px solid #d9c9a6;background:linear-gradient(90deg,#fdfaf2,transparent);
  padding:8px 12px;border-radius:0 6px 6px 0}
.yq-line{font-size:11.8px;color:#4a4132;line-height:1.85}
.yq-easy{color:#8a6f3c}
.yq-tie{margin-top:7px;font-size:11.8px;color:#2c4a7c;line-height:1.85;
  background:#eff5ff;border:1px solid #d7e4fa;border-radius:6px;padding:7px 10px}
.yq-foot{margin-top:9px;font-size:10.5px;color:#9aa8bd;line-height:1.75}

/* 方解卡（屏⑤） */
.rxl-lead{font-size:12.5px;color:#33415c;line-height:1.95;background:#f7faff;border:1px solid #d7e4fa;
  border-radius:8px;padding:10px 13px}
.rxl-roles{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.rxl-r{display:flex;gap:9px;align-items:baseline;font-size:11.8px;line-height:1.8;
  border-bottom:1px dashed var(--line);padding-bottom:5px}
.rxl-r b{flex:none;width:26px;height:22px;line-height:22px;text-align:center;border-radius:5px;
  background:var(--blue-t);color:var(--blue);font-size:11.5px}
.rxl-r span{flex:none;font-weight:600;color:var(--ink);min-width:120px}
.rxl-r em{font-style:normal;color:#7c8aa0;font-size:11px}
.rxl-pairs{margin-top:9px;font-size:11.5px;line-height:1.9}
.rxl-pairs>b{display:block;font-size:10px;letter-spacing:1.2px;color:#a08b5f;margin-bottom:3px}
.rxl-pairs .pr{display:inline-block;margin:0 7px 5px 0;border:1px solid #e9e0cc;background:#fffdf7;
  border-radius:6px;padding:3px 8px;color:#8a6f3c}
.rxl-pairs .pr em{font-style:normal;color:#4a4132;margin-left:5px}
.rxl-pairs .pr i{font-style:normal;display:block;font-size:9.5px;color:#a08b5f}
.rxl-notes{margin-top:8px;font-size:11.3px;color:#7c8aa0;line-height:1.85;
  background:#f7f9fc;border:1px solid var(--line);border-radius:7px;padding:8px 11px}
.rxl-tbl{width:100%;border-collapse:collapse;font-size:10.8px;margin-top:10px;line-height:1.7}
.rxl-tbl th{border:1px solid var(--line);background:#f2f5fa;padding:5px 7px;text-align:left;
  font-size:10px;letter-spacing:.6px;color:#5b6779}
.rxl-tbl td{border:1px solid var(--line);padding:5px 7px;vertical-align:top;color:#33415c}
.rxl-foot{margin-top:8px;font-size:10.3px;color:#9aa8bd;line-height:1.7}
.hn-g{color:#8a97a8;font-size:10px}
.sp-role{display:inline-block;font-size:9px;line-height:1.5;padding:0 4px;border-radius:3px;
  background:#eef4ff;color:#2c4a7c;vertical-align:1px}
.sp-warn{display:block;margin-top:3px;font-size:9.6px;color:#a3282f;line-height:1.6}

/* 单据里的药性表 */
.sh-body .sp-nat{font-size:10px;line-height:1.65}
.sh-body .sp-nat th{padding:4px 5px;font-size:9.5px}
.sh-body .sp-nat td{padding:4px 5px;vertical-align:top;color:#26303f}

@media print{
  #printArea .sp-nat{font-size:9.5px;line-height:1.55}
  #printArea .sp-nat th{padding:3px 4px;font-size:9px}
  #printArea .sp-nat td{padding:3px 4px}
  #printArea .sp-role{border:1px solid #999;background:none;color:#000;font-size:8px}
  #printArea .sp-warn{color:#000;font-size:9px}
  #printArea .sp-note{page-break-inside:auto}
}

@media (max-width:980px){
  .yq-card .yq-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .yq-card .yq-grid{grid-template-columns:1fr}
  .rxl-r{flex-wrap:wrap}
  .rxl-r span{min-width:0}
}
.dcsel{width:100%;border:1px solid #e3b7b7;background:#fffafa;color:#a3282f;border-radius:5px;
  padding:2px 4px;font-size:10.5px;font-family:inherit;cursor:pointer;box-sizing:border-box}
.dcsel:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 2px var(--red-t)}
.dc.ok{color:#0c6b47;background:var(--green-t);border:1px solid var(--green-b);border-radius:4px;
  padding:0 5px;font-size:10.5px}

/* ── 漏斗反问卡（PROBE）───────────────────────────────── */
.pb-card{margin-top:12px}
.pb-cands{display:flex;gap:8px;flex-wrap:wrap;margin:2px 0 10px}
.pb-cd{display:flex;align-items:center;gap:7px;padding:5px 11px;border:1px solid var(--line);
  border-radius:7px;background:#fbfcfe;font-size:11.5px;color:var(--sub)}
.pb-cd.on{border-color:var(--blue-b);background:var(--blue-t);color:var(--blue-d)}
.pb-cd b{font-size:12.5px;font-weight:600;color:var(--ink)}
.pb-cd u{text-decoration:none;font-family:var(--mono);font-size:10.5px;color:#a3562f}
.pb-bar{display:inline-block;width:56px;height:4px;border-radius:2px;background:#e4eaf3;overflow:hidden}
.pb-bar em{display:block;height:100%;background:var(--blue);border-radius:2px}
.pb-cd.on .pb-bar em{background:var(--blue-d)}
.pb-q{border:1px solid var(--line);border-radius:9px;padding:10px 12px;margin-bottom:8px;background:#fff}
.pb-qh{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.pb-badge{font-size:10px;padding:1px 7px;border-radius:4px;border:1px solid var(--line);
  background:#f8fafc;color:var(--sub);letter-spacing:.6px}
.pb-badge.b-diff{border-color:var(--blue-b);background:var(--blue-t);color:var(--blue)}
.pb-badge.b-confirm{border-color:var(--green-b);background:var(--green-t);color:var(--green)}
.pb-badge.b-exclude{border-color:var(--amber-b);background:var(--amber-t);color:var(--amber)}
.pb-w{font-size:10px;color:#a9b4c5;font-family:var(--mono)}
.pb-ask{font-family:var(--serif);font-size:15.5px;color:var(--ink);line-height:1.7;letter-spacing:.4px}
.pb-why{margin-top:5px;font-size:10.8px;line-height:1.75;color:#7c8aa3;
  border-left:2px solid #e4eaf3;padding-left:7px}
.pb-why b{font-weight:600;color:#5a6a85;margin-right:5px}
.pb-opts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.pb-opt{font-size:12.5px;padding:5px 12px;border:1px solid #dfe6f0;border-radius:14px;
  background:#fcfdff;color:#3c4a63;transition:.12s}
.pb-opt:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-t)}
.pb-opt:active{background:var(--blue-d);color:#fff;border-color:var(--blue-d)}
.pb-lock{border:1px solid var(--green-b);background:var(--green-t);border-radius:9px;padding:11px 13px}
.pb-lock b{display:block;font-size:13.5px;color:#0c6b47;margin-bottom:3px}
.pb-lock span{font-size:11.5px;color:#2f6a52}
.pb-lock-note{margin-top:6px;padding-top:6px;border-top:1px dashed var(--green-b);
  font-size:11px;line-height:1.75;color:#3d6b58}
.pb-empty{font-size:11.5px;line-height:1.85;color:#7c8aa3;background:#f8fafc;
  border:1px dashed var(--line);border-radius:8px;padding:10px 12px}
.pb-note{margin-top:9px;font-size:10.5px;line-height:1.75;color:#93a0b5}

/* ── 病证桥 · 病轴合参卡（屏④）─────────────────────────── */
.bz-card{margin-bottom:12px}
.bz-p{margin:6px 0 8px;font-size:12px;line-height:1.9;color:#3d4a63}
.bz-p b{color:var(--ink)}
.bz-note2{margin-top:9px;font-size:10.8px;line-height:1.85;color:#7c8aa3;
  background:#f8fafc;border:1px dashed var(--line);border-radius:7px;padding:8px 10px}
.bz-note2 b{color:#5a6a85;font-weight:600}
.bz-t{width:100%;border-collapse:collapse;margin-top:8px;font-size:11.8px}
.bz-t th{text-align:left;font-weight:500;font-size:10.5px;letter-spacing:.8px;color:#8a97a8;
  padding:5px 8px;border-bottom:1px solid var(--line);background:#fbfcfe}
.bz-t td{padding:7px 8px;border-bottom:1px solid #f0f3f8;vertical-align:top;line-height:1.7}
.bz-t td b{font-weight:600;color:var(--ink)}
.bz-t tr.bz-off{opacity:.45}
.bz-t tr.bz-off td{text-decoration:none}
.bz-num{font-family:var(--mono);font-size:13px;color:var(--blue-d);font-weight:600}
.bz-why{font-size:10.8px;color:#6b7890}
.bz-src{font-size:10.5px;color:#8a97a8;line-height:1.65}
.bz-lv{display:inline-block;margin-left:5px;font-style:normal;font-size:9.5px;
  border:1px solid #dfe6f0;border-radius:3px;padding:0 4px;color:#93a0b5}
.bz-un{display:inline-block;margin-left:6px;font-style:normal;font-size:9.5px;
  color:#a3562f;border:1px solid #e8d5c8;background:#fdf6f1;border-radius:3px;padding:0 4px}
.bz-rv{margin-top:11px;border-top:1px dashed var(--line);padding-top:10px}
.bz-rv h6{margin:0 0 5px;font-size:11.5px;font-weight:600;color:#2c4a7c;letter-spacing:.5px}
.bz-rv-p{margin:0 0 7px;font-size:10.8px;line-height:1.8;color:#6b7890}
.bz-rv-p b{color:#4a5a75}
.bz-rv ul{margin:0;padding:0;list-style:none}
.bz-rv li{font-size:11.5px;line-height:1.9;color:#3d4a63;padding:3px 0;border-bottom:1px solid #f5f7fa}
.bz-rv li:last-child{border-bottom:0}
.bz-rv li b{font-weight:600;color:var(--ink)}
.bz-rv li em{font-style:normal;font-size:10.5px;color:#8a97a8}
.bz-ur{display:inline-block;margin-right:6px;font-size:9.5px;padding:1px 6px;border-radius:3px}
.bz-ur.u-urgent{background:#fdecec;border:1px solid #f0c0c0;color:#a32d2d}
.bz-ur.u-consider{background:#fdf6e8;border:1px solid #ecd9b0;color:#8a6f3c}
.bz-ur.u-routine{background:#f2f5f9;border:1px solid #dfe6f0;color:#7c8aa3}
.bz-foot{margin-top:10px;padding-top:8px;border-top:1px solid #f0f3f8;
  font-size:10.5px;line-height:1.8;color:#9aa8bd}
.bz-foot b{color:#7c8aa3;font-weight:600}

/* ── 建档表单 · 西医诊断区 ─────────────────────────────── */
.np-icd{margin:8px 0 2px;font-size:10.8px;line-height:1.8;color:#7c8aa3;
  background:#f8fafc;border:1px dashed var(--line);border-radius:7px;padding:8px 10px}
.np-icd.on{background:#f4f8ff;border-color:#d7e4fa;border-style:solid}
.np-icd b{color:#2c4a7c;font-weight:600;margin-right:4px}
.np-pill{display:inline-block;margin:3px 5px 0 0;font-size:10.5px;padding:2px 8px;
  border-radius:10px;background:#fff;border:1px solid #dbe6f5;color:#3d5478}
.np-pill.off{background:#f8f8f8;border-color:#e6e6e6;color:#9aa0a8}
.np-icd-n{margin-top:6px;font-size:10px;color:#93a0b5;line-height:1.7}

/* ── 屏⑦ 复诊 · 疗效评价与调方 ─────────────────────────── */
.fu-case .fu-case-g{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin-top:8px}
.fu-case-g div{font-size:11.8px;line-height:1.8;color:#3d4a63}
.fu-case-g b{display:inline-block;min-width:64px;font-weight:500;color:#8a97a8;font-size:10.5px;margin-right:6px}
.fu-t{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}
.fu-t th{text-align:left;font-weight:500;font-size:10.5px;letter-spacing:.8px;color:#8a97a8;
  padding:5px 8px;border-bottom:1px solid var(--line);background:#fbfcfe}
.fu-t td{padding:7px 8px;border-bottom:1px solid #f0f3f8;color:#3d4a63}
.fu-sel{font-size:12px;padding:3px 6px;border:1px solid #dfe6f0;border-radius:6px;background:#fff;color:#3c4a63}
.fu-empty{text-align:center;color:#9aa8bd;font-size:11px;padding:14px 0}
.fu-new{display:flex;align-items:center;gap:10px;margin-top:9px;font-size:11.5px;color:#5a6a85}
.fu-new span{flex:0 0 auto}
.fu-new input{flex:1;font-size:12px;padding:6px 9px;border:1px solid #dfe6f0;border-radius:7px;background:#fff;color:var(--ink)}
.fu-res{margin-top:12px;border-top:1px dashed var(--line);padding-top:12px}
.fu-eff{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.fu-big{display:flex;align-items:baseline;gap:8px}
.fu-num{font-family:var(--mono);font-size:26px;font-weight:600}
.fu-num.ok{color:#0c6b47}.fu-num.warn{color:#8a6f3c}.fu-num.bad{color:#a32d2d}
.fu-grade{font-size:14px;font-weight:600;letter-spacing:2px}
.fu-grade.ok{color:#0c6b47}.fu-grade.warn{color:#8a6f3c}.fu-grade.bad{color:#a32d2d}
.fu-lab{font-size:10.8px;color:#8a97a8;line-height:1.7}
.fu-strat{margin-top:10px;background:#f6f9ff;border:1px solid #dbe6f5;border-radius:8px;padding:9px 12px}
.fu-strat h6{margin:0 0 4px;font-size:12px;font-weight:600;color:#2c4a7c}
.fu-strat h6 b{color:var(--blue-d)}
.fu-strat p{margin:0;font-size:11.5px;line-height:1.85;color:#3d4a63}
.fu-flags{margin-top:10px}
.fu-flag{font-size:11.5px;line-height:1.8;color:#5a4a1e;background:#fdf6e8;
  border:1px solid #ecd9b0;border-radius:7px;padding:8px 11px;margin-bottom:7px}
.fu-flag.hi{color:#6b2a1e;background:#fdecec;border-color:#f0c0c0}
.fu-flag b{font-weight:600}
.fu-flag-a{margin-top:3px;font-size:11px;color:#6b7890}
.fu-ok{margin-top:9px;font-size:11.5px;color:#0c6b47;background:#eef8f2;border:1px solid #c6e6d4;
  border-radius:7px;padding:7px 11px}
.fu-note{margin-top:9px;font-size:10.5px;line-height:1.8;color:#9aa8bd}
.fu-note b{color:#7c8aa3}
.fu-hist{margin-top:12px}
.fu-hist h6{margin:0 0 7px;font-size:11.5px;font-weight:600;color:#5a6a85;letter-spacing:.5px}
.fu-hist.empty{font-size:11.5px;color:#9aa8bd;background:#f8fafc;border:1px dashed var(--line);
  border-radius:8px;padding:10px 12px;line-height:1.8}
.fu-hrow{display:flex;align-items:center;gap:10px;font-size:11.8px;color:#3d4a63;
  padding:6px 4px;border-bottom:1px solid #f0f3f8;flex-wrap:wrap}
.fu-hno{font-family:var(--mono);color:#8a97a8;font-size:10.5px}
.fu-hd{color:#6b7890}
.fu-htag{font-size:10.5px;padding:1px 7px;border-radius:4px;background:#f2f5f9;border:1px solid #dfe6f0;color:#5a6a85}
.fu-htag.ok{background:#eef8f2;border-color:#c6e6d4;color:#0c6b47}
.fu-htag.bad{background:#fdecec;border-color:#f0c0c0;color:#a32d2d}
.fu-hs{font-weight:600;color:var(--ink)}
.fu-hn{font-size:10.5px;color:#a3562f}

/* ═══ 毒性药 · 风险提示（v0.5 只提示不拦截）═══════════════════════════
   配色取赭石调，刻意区别于「红色=拦截」「琥珀=一般提示」：
   毒性药是第三种状态——不拦，但必须被看见。 */
.toxbox{margin:0 0 12px;border:1px solid #ecd9c6;border-radius:10px;background:#fdf8f3;
  padding:11px 13px;animation:slideIn .28s ease}
.tox-h{display:flex;align-items:baseline;gap:9px;padding-bottom:8px;
  border-bottom:1px dashed #ecd9c6;margin-bottom:9px;flex-wrap:wrap}
.tox-h b{font-size:12px;color:#8a4b2a;letter-spacing:.6px}
.tox-n{font-size:10.5px;color:#a1836a;margin-left:auto}
.tox-row{padding:8px 0;border-bottom:1px solid #f4e9dd}
.tox-row:last-of-type{border-bottom:0}
.tox-l{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tox-l b{font-size:13px;color:#3d2a1c;letter-spacing:.4px}
.tox-lv{font-size:9.5px;padding:1px 7px;border-radius:4px;background:#f7e6d5;
  border:1px solid #e6c9ab;color:#8a4b2a;font-weight:600}
.tox-lv.max{background:#fbe0d8;border-color:#e3a893;color:#a33a1d}
.tox-d{font-family:var(--mono);font-size:11px;color:#5a4a3c}
.tox-d em{font-style:normal;margin-left:7px;color:#9a8a7c;font-size:10px}
.tox-d em.over{color:#c5303c;font-weight:600}
.tox-k{display:flex;gap:8px;font-size:11.5px;line-height:1.75;color:#5c4a3b;margin-top:4px}
.tox-k i{font-style:normal;flex:none;width:44px;font-size:10px;letter-spacing:.5px;
  color:#a1836a;padding-top:2px}
.tox-ok{font-size:9.5px;color:#0c6b47;background:#eef8f2;border:1px solid #c6e6d4;
  border-radius:4px;padding:0 6px;margin-left:6px}
.tox-miss{font-size:9.5px;color:#a33a1d;background:#fdecec;border:1px solid #f0c0c0;
  border-radius:4px;padding:0 6px;margin-left:6px}
.tox-foot{margin-top:9px;padding-top:8px;border-top:1px dashed #ecd9c6;
  font-size:10.5px;line-height:1.75;color:#a1836a}
.warnbox.hi{border-color:#e8b4a0;background:#fef6f2}
.warnbox.hi .rc{color:#a3462a}
.warnbox.hi .ms{color:#6b3a24}
.tox-badge{font-size:9.5px;padding:1px 6px;border-radius:4px;background:#f7e6d5;
  border:1px solid #e6c9ab;color:#8a4b2a;white-space:nowrap}

/* ═══ 法度勘验 · 治法与治则（第二层）═══════════════════════════════════
   与三套已有色分开：红=拦截、琥珀=提示、赭=毒性药。
   治法层是第四种——黛青，取「法」的肃正感，且刻意不用红（不拦）。 */
.facard{margin:14px 0 0;border:1px solid #dde5ea;border-radius:10px;
  background:linear-gradient(180deg,#f8fafb,#f4f8fa);padding:12px 14px}
.facard.lv-high{border-color:#e8c3c3;background:linear-gradient(180deg,#fdf8f8,#fbf4f4)}
.facard.na{border-style:dashed;background:#fafbfc}
.fa-h{display:flex;align-items:baseline;gap:9px;padding-bottom:9px;
  border-bottom:1px solid #e4ebef;margin-bottom:11px;flex-wrap:wrap}
.fa-h b{font-size:12.5px;color:#2c4859;letter-spacing:.8px}
.fa-sub{font-size:10px;color:#8ba0ad;letter-spacing:.5px}
.fa-tag{margin-left:auto;font-size:9.5px;padding:1px 8px;border-radius:20px;
  border:1px solid;letter-spacing:.6px}
.fa-tag.ok{color:#0c6b47;border-color:#b9dccb;background:#eef8f2}
.fa-tag.note{color:#8a6318;border-color:#e6d3ab;background:#fdf8ec}
.fa-tag.high{color:#a3272f;border-color:#e8b8bc;background:#fdf1f2}
.fa-tag.na{color:#8ba0ad;border-color:#dde5ea;background:#fff}
.fa-chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  font-size:11.5px;color:#3a5263;margin-bottom:11px;line-height:1.7}
.fa-chain .fc{display:inline-flex;align-items:baseline;gap:4px}
.fa-chain .fc i{font-style:normal;font-size:9px;color:#8ba0ad;letter-spacing:.5px;
  border:1px solid #dde5ea;border-radius:3px;padding:0 3px;background:#fff}
.fa-chain .fc.dim{color:#7d909c}
.fa-chain .far{color:#b8c6ce;font-size:10px}
.fa-note{font-size:10.5px;color:#7d909c;line-height:1.7;padding:7px 9px;
  background:#fff;border-radius:6px;border:1px solid #e9eff2;margin-bottom:10px}

/* 方向分布条 */
.fa-dirs{display:grid;gap:3px;margin-bottom:12px;padding:9px 10px;
  background:#fff;border:1px solid #e9eff2;border-radius:7px}
.fad{display:grid;grid-template-columns:44px 1fr 34px auto;align-items:center;gap:8px}
.fad .t{font-size:10.5px;color:#48606f;text-align:right;letter-spacing:.3px}
.fad .bar{height:5px;background:#eef3f6;border-radius:3px;overflow:hidden}
.fad .bar i{display:block;height:100%;border-radius:3px;
  background:linear-gradient(90deg,#7fa8bd,#4d7d97);transition:width .4s ease}
.fad .v{font-family:var(--mono);font-size:10px;color:#5d7686;text-align:right}
.fad .hs{font-size:9.5px;color:#a8b8c2;max-width:150px;overflow:hidden;
  white-space:nowrap;text-overflow:ellipsis}

/* 四勘 */
.fa-kan{display:grid;gap:8px}
.fak{border-left:2px solid #cfdae1;padding:2px 0 2px 10px}
.fak.st-ok{border-left-color:#5aa986}
.fak.st-note{border-left-color:#d0a349}
.fak.st-lack,.fak.st-against,.fak.st-bei{border-left-color:#cf5a63}
.fak.st-na{border-left-color:#dfe7ec}
.fak .h{display:flex;align-items:center;gap:6px;margin-bottom:2px}
.fak .ic{font-size:11px;width:13px;text-align:center;font-weight:700}
.fak.st-ok .ic{color:#0c6b47}
.fak.st-note .ic{color:#a8761a}
.fak.st-lack .ic,.fak.st-against .ic,.fak.st-bei .ic{color:#c5303c}
.fak.st-na .ic{color:#b8c6ce}
.fak b{font-size:11.5px;color:#33495a;letter-spacing:.6px}
.fak .st{font-style:normal;font-size:9px;color:#93a8b4;letter-spacing:.5px}
.fak.st-lack .st,.fak.st-against .st,.fak.st-bei .st{color:#c5303c}
.fak .m{font-size:11.5px;line-height:1.8;color:#42596a}
.fak .s{font-size:9.5px;color:#9aacb7;margin-top:2px;line-height:1.6}

.fa-verdict{margin-top:12px;padding:8px 11px;border-radius:7px;font-size:11.5px;line-height:1.75}
.fa-verdict.ok{background:#eef8f2;color:#0c6b47;border:1px solid #c6e6d4}
.fa-verdict.note{background:#fdf8ec;color:#8a6318;border:1px solid #ebdcb9}
.fa-verdict.high{background:#fdf1f2;color:#a3272f;border:1px solid #ecc3c7}
.fa-foot{margin-top:9px;font-size:10px;line-height:1.75;color:#9aacb7}
.fa-none{font-size:12px;color:#7d909c;line-height:1.8}

/* 屏④ 证 · 机 · 法 三环（把「立法」这一步显出来，别让治法凭空出现） */
.mchain{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);
  border-radius:10px;background:#fff;overflow:hidden;margin-bottom:12px}
.mchain > div{padding:11px 13px;border-right:1px solid var(--line)}
.mchain > div:last-child{border-right:0}
.mchain .lk{font-size:9.5px;letter-spacing:1.4px;color:var(--sub);margin-bottom:4px;
  display:flex;align-items:center;gap:5px}
.mchain .lk em{font-style:normal;width:14px;height:14px;line-height:14px;text-align:center;
  border-radius:50%;background:#eef3f6;color:#5d7686;font-size:9px}
.mchain .lv2{font-size:12.5px;color:var(--ink);line-height:1.7;font-weight:600}
.mchain .lv3{font-size:11px;color:var(--sub);line-height:1.7;margin-top:3px}
.mchain .src{font-size:9.5px;color:#9aacb7;margin-top:5px;line-height:1.6}
.fa-dcap{font-size:9.5px;color:#9aacb7;line-height:1.65;margin-bottom:6px;
  padding-bottom:6px;border-bottom:1px dashed #eef3f6}
.fa-dcap em{font-style:normal;color:#b3c2cb}

/* ═══ 队列状态 · 已签发患者（不再是待办）══════════════════════ */
.row.done{opacity:.66;background:#fafcfb;border-style:solid}
.row.done:hover{opacity:.92;border-color:#b9dccb;box-shadow:0 2px 8px rgba(12,107,71,.08)}
.row.done .ava{background:#0c6b47}
.row.done.sel{opacity:1;background:#f2faf5;border-color:#0c6b47}
.row.done .meta b::after{content:' ✓';color:#0c6b47;font-size:12px}

/* ═══ 单据品牌 · 医馆与公司同列纸面 ═══════════════════════════════
   医馆 = 文书的法律主体（左、大字、与患者信息同侧）；
   公司 = 技术与产品来源（右、小字、标明「技术支持」性质）。
   两者不混排成一句，避免患者误认「公司=诊治机构」。 */
.sp-head .sp-brand{display:flex;align-items:flex-start;gap:11px;text-align:left;margin-bottom:9px}
.sp-head .sp-org{flex:1;min-width:0}
.sp-head .sp-org h3{margin:0;text-align:left;line-height:1.25}
.sp-head .sp-org .sub{text-align:left}
.sp-head .sp-cobrand{flex:none;text-align:right;line-height:1.55;padding-left:10px;
  border-left:1px solid currentColor;opacity:.9}
.sp-cobrand .cb-top{display:flex;align-items:center;gap:7px;justify-content:flex-end}
.sp-cobrand .cb-top .gwlogo{flex:none;border-radius:6px}
.sp-cobrand .cb-txt{min-width:0}
.sp-cobrand .cb1{font-size:11.5px;font-weight:700;letter-spacing:1.2px;white-space:nowrap}
.sp-cobrand .cb1 em{font-style:normal;font-size:8.5px;letter-spacing:1px;opacity:.72;font-weight:400}
.sp-cobrand .cb2{font-size:9.5px;letter-spacing:.4px;white-space:nowrap;opacity:.9}
.sp-cobrand .cb3{font-size:9px;letter-spacing:.2px;opacity:.72;white-space:nowrap}

.sp-foot .sf-brand{display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  padding-bottom:5px;margin-bottom:5px;border-bottom:1px dotted currentColor;opacity:.95}
.sp-foot .sf-brand .gwlogo{border-radius:4px;flex:none}
.sf-b1{font-size:10.5px;font-weight:700;letter-spacing:.8px}
.sf-b1 em{font-style:normal;font-size:8.5px;font-weight:400;letter-spacing:1px;opacity:.7}
.sf-b2{font-size:10px;letter-spacing:.3px}
.sf-b3{font-size:9.5px;letter-spacing:.2px;opacity:.8;margin-left:auto}
.sp-foot .sf-line{display:block;margin-top:4px;font-size:9.5px;letter-spacing:.2px;opacity:.78}

/* 屏幕预览：窄容器时品牌块折行，不挤扁机构名 */
.sh-body .sp-head .sp-brand{flex-wrap:wrap}
@media (max-width:560px){
  .sp-head .sp-brand{flex-wrap:wrap}
  .sp-head .sp-cobrand{border-left:0;padding-left:0;text-align:left;width:100%;max-width:100%;
    border-top:1px dotted currentColor;padding-top:5px;margin-top:2px}
  .sp-head .sp-cobrand .cb-top{justify-content:flex-start}
}
/* 打印：品牌块必须与机构同页首行，禁止被孤儿换行 */
@media print{
  .sp-head .sp-brand{page-break-inside:avoid;break-inside:avoid}
  .sp-foot .sf-brand{page-break-inside:avoid}
}

/* 修正：品牌块在窄容器（预览面板）里被裁尾——允许 cb3 / 页脚 slogan 折行，
   机构名保持不折行；cobrand 上限 36% 保证机构名永远有主体宽度。 */
.sp-head .sp-brand{min-width:0}
.sp-head .sp-cobrand{min-width:0;max-width:36%}
.sp-cobrand .cb3{white-space:normal;line-height:1.5}
.sp-org h3{white-space:nowrap}
.sp-foot .sf-brand .sf-b3{min-width:0;white-space:normal;flex:1 1 auto;text-align:right}

/* ═══ 屏⑧ 医患客服 · AI 值守 ═══════════════════════════════════════
   三栏：会话队列 / 对话 / 患者上下文。
   配色沿用全套：红=红旗升级、琥珀=待医师、绿=AI 已答、蓝=医师人工。 */
.cs-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:12px}
.cs-kpi{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 12px}
.cs-kpi b{display:block;font-size:20px;font-family:var(--mono);color:var(--ink);line-height:1.1}
.cs-kpi span{font-size:10.5px;color:var(--sub);letter-spacing:.6px}
.cs-kpi em{display:block;font-style:normal;font-size:9.5px;color:#a8b6c6;margin-top:2px}
.cs-kpi.r b{color:var(--red)} .cs-kpi.a b{color:var(--amber)} .cs-kpi.g b{color:#0c6b47}

.cs-wrap{display:grid;grid-template-columns:266px 1fr 274px;gap:11px;align-items:start}
.cs-list,.cs-talk,.cs-side{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.cs-list-h,.cs-side-h{padding:9px 12px;font-size:11px;font-weight:700;letter-spacing:1.2px;
  color:var(--ink);border-bottom:1px solid var(--line);background:#fafbfd}
.cs-list-h span{float:right;font-weight:400;font-size:9.5px;color:#a8b6c6;letter-spacing:.3px}

/* 会话项 */
.cs-th{display:flex;gap:9px;padding:9px 11px;border-bottom:1px solid #f0f3f7;cursor:pointer;
  transition:.14s;align-items:flex-start}
.cs-th:hover{background:#f7faff}
.cs-th.sel{background:#f0f6ff;box-shadow:inset 3px 0 0 var(--blue)}
.cs-th.red{background:#fdf3f4}
.cs-th.red.sel{background:#fbe9eb;box-shadow:inset 3px 0 0 var(--red)}
.cs-ava{width:30px;height:30px;border-radius:8px;background:var(--blue);color:#fff;flex:none;
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.cs-th.red .cs-ava{background:var(--red)}
.cs-meta{flex:1;min-width:0}
.cs-meta b{display:block;font-size:12px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-meta b em{font-style:normal;font-size:9px;color:#a8b6c6;margin-left:5px;
  border:1px solid #e4eaf2;border-radius:3px;padding:0 3px}
.cs-meta span{display:block;font-size:10.5px;color:var(--sub);margin-top:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cs-rt{flex:none;text-align:right;display:flex;flex-direction:column;gap:3px;align-items:flex-end}
.cs-rt i{font-style:normal;font-size:9px;color:#b3c0ce;font-family:var(--mono)}
.cs-tag{font-size:9px;padding:1px 6px;border-radius:4px;border:1px solid;letter-spacing:.3px;white-space:nowrap}
.cs-tag.r{color:var(--red);border-color:#f0c0c0;background:#fdecec}
.cs-tag.a{color:#8a6318;border-color:#e6d3ab;background:#fdf8ec}
.cs-tag.g{color:#0c6b47;border-color:#c6e6d4;background:#eef8f2}
.cs-tag.c{color:#1d4ed8;border-color:#c9d9f8;background:#eff4ff}
.cs-tag:not(.r):not(.a):not(.g):not(.c){color:#8b98a8;border-color:#e4eaf2;background:#fafbfd}

/* 对话区 */
.cs-talk-h{display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:9px 12px;border-bottom:1px solid var(--line);background:#fafbfd;flex-wrap:wrap}
.cs-talk-h > div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.cs-talk-h b{font-size:13px;color:var(--ink)}
.cs-talk-h em{font-style:normal;font-size:10px;color:#a8b6c6}
.cs-ops{display:flex;gap:5px;flex-wrap:wrap}
.cs-msgs{height:430px;overflow-y:auto;padding:13px 14px;background:#fcfdfe}
.cs-msg{margin-bottom:13px;display:flex;flex-direction:column;max-width:82%}
.cs-msg.p{align-self:flex-start;margin-right:auto}
.cs-msg.ai,.cs-msg.doc{margin-left:auto;align-items:flex-end}
.cs-who{font-size:9.5px;color:#93a3b3;margin-bottom:3px;letter-spacing:.4px}
.cs-bub{font-size:12px;line-height:1.85;padding:9px 12px;border-radius:10px;
  background:#fff;border:1px solid #e4eaf2;color:var(--ink);word-break:break-word}
.cs-msg.p .cs-bub{background:#f2f5f9;border-color:#e6ebf1}
.cs-msg.p .cs-bub.alert{background:#fdf1f2;border-color:#f0c0c0;color:#8a1f27;font-weight:600}
.cs-msg.doc .cs-bub{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.cs-msg.ai .cs-bub{background:#fbfdff;border-color:#d6e4f7}
.cs-cite{margin-top:4px;font-size:9.5px;color:#7f93a8;background:#f2f7fd;
  border:1px solid #e2edf9;border-radius:4px;padding:1px 7px;letter-spacing:.2px}
.cs-esc{margin-top:4px;font-size:9.5px;color:#a3272f;background:#fdf1f2;
  border:1px solid #f0ccd0;border-radius:4px;padding:1px 7px}
.cs-at{font-size:9px;color:#b3c0ce;margin-top:3px;font-family:var(--mono)}
.cs-sys{margin:9px auto;font-size:10px;color:#8b98a8;background:#f4f7fa;
  border:1px dashed #dde5ee;border-radius:20px;padding:2px 12px;text-align:center;max-width:90%}
.cs-sys.red{color:#a3272f;background:#fdf1f2;border-color:#f0c0c0}

/* 随访卡 */
.cs-fu-t{font-size:12px;line-height:1.8;margin-bottom:8px}
.cs-fu{display:grid;gap:6px}
.cs-fu-row{display:flex;justify-content:space-between;align-items:center;gap:8px;
  padding:5px 0;border-bottom:1px dotted #e4eaf2}
.cs-fu-row:last-child{border-bottom:0}
.cs-fu-row > span:first-child{font-size:11.5px;color:var(--ink)}
.cs-fu-op{display:flex;gap:4px}
.cs-fu-b{font-size:10px;padding:2px 8px;border-radius:5px;border:1px solid #dde5ee;
  background:#fff;color:#5b6b7d;cursor:pointer;transition:.12s}
.cs-fu-b:hover{border-color:var(--blue);color:var(--blue)}
.cs-fu-b.on{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:600}
.cs-fu-donebox{display:flex;flex-wrap:wrap;gap:5px}
.cs-fu-done{font-size:10.5px;background:#eef8f2;border:1px solid #c6e6d4;color:#0c6b47;
  border-radius:5px;padding:2px 7px}
.cs-fu-done i{font-style:normal;margin-left:5px;font-weight:700}

/* 输入区 */
.cs-input{border-top:1px solid var(--line);padding:9px 12px;background:#fafbfd}
.cs-input textarea{width:100%;border:1px solid #dde5ee;border-radius:7px;padding:7px 10px;
  font-size:12px;font-family:inherit;line-height:1.6;resize:vertical;outline:none}
.cs-input textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(29,78,216,.08)}
.cs-input-b{display:flex;align-items:center;gap:10px;margin-top:7px}
.cs-chk{font-size:10.5px;color:#5b6b7d;display:flex;align-items:center;gap:5px;cursor:pointer}
.cs-chk input{accent-color:#1d4ed8}
.cs-hint{font-size:9.5px;color:#a8b6c6;margin-left:auto}

/* 右栏上下文 */
.cs-side-in{padding:10px 12px}
.cs-kv{display:flex;gap:8px;font-size:11px;line-height:1.75;padding:2px 0}
.cs-kv span{flex:none;width:56px;color:#93a3b3;font-size:10px;letter-spacing:.3px;padding-top:1px}
.cs-kv b{flex:1;min-width:0;font-weight:500;color:var(--ink);word-break:break-word}
.cs-rule{font-size:10.5px;line-height:1.9;color:#5b6b7d;background:#fafbfd;
  border:1px solid #eef2f7;border-radius:6px;padding:7px 9px}
.cs-none{font-size:11px;color:#93a3b3;padding:14px 0;text-align:center}
@media (max-width:1180px){
  .cs-wrap{grid-template-columns:1fr}
  .cs-msgs{height:360px}
}

/* 会话项右侧留足时间戳宽度，防「08:47」裁成「68:47」 */
.cs-rt{min-width:48px}

/* ── 五行力场（第五勘·乘侮）────────────────────────────────────
   与「方向分布」并列但不同义：方向分布讲哪类功效占多少药力，
   力场讲这股药力最终推向哪一行。中线为零，右助左制。 */
.fa-wx{margin-bottom:12px;padding:9px 10px;border:1px solid #e2dccd;
  border-radius:7px;background:rgba(255,253,248,.72)}
.wx-bars{display:grid;gap:4px;margin-top:6px}
.wx-row{display:flex;align-items:center;gap:8px}
.wx-n{flex:none;width:16px;text-align:center;font-size:11px;font-weight:700}
.wx-track{position:relative;flex:1;height:9px;border-radius:5px;
  background:rgba(120,110,90,.07);overflow:hidden}
.wx-z{position:absolute;left:50%;top:0;bottom:0;width:1px;
  background:rgba(120,110,90,.32);transform:translateX(-.5px)}
.wx-f{position:absolute;top:0;bottom:0;border-radius:5px;opacity:.82;
  transition:width .5s cubic-bezier(.2,.8,.3,1),left .5s,right .5s}
.wx-v{flex:none;width:44px;text-align:right;font-size:10.5px;
  font-variant-numeric:tabular-nums;color:var(--sub);letter-spacing:.2px}
/* 五行五色：取传统五色而压低明度，米色底上可读 */
.wx-c-mu{color:#3f6f52;background:#3f6f52}
.wx-c-huo{color:#b0453c;background:#b0453c}
.wx-c-tu{color:#a8802f;background:#a8802f}
.wx-c-jin{color:#7d7a6e;background:#7d7a6e}
.wx-c-shui{color:#35566f;background:#35566f}
.wx-n{background:none!important}
.wx-tiao{margin-top:7px;font-size:10.5px;color:var(--sub);line-height:1.55}
.wx-tiao em{font-style:normal;opacity:.72;font-size:10px}
@media print{.fa-wx{break-inside:avoid}}

/* ── 医师初判收成一行（已初判时）────────────────────────────────
   证候已定＝没有待办，不该再占一整块卡。留一行让医师随时能改判。 */
.syn-mini{display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin-bottom:12px;padding:7px 11px;border:1px solid #e6e0d2;border-radius:7px;
  background:rgba(255,253,248,.6);font-size:11.5px;color:var(--sub);line-height:1.5}
.syn-mini .sm-k{flex:none;font-size:10px;letter-spacing:.6px;color:#9a9384;
  border-right:1px solid #e6e0d2;padding-right:8px}
.syn-mini b{color:var(--ink);font-weight:700;letter-spacing:.2px}
.syn-mini .sm-v{opacity:.82}
.syn-mini .sm-b{margin-left:auto;flex:none;font:inherit;font-size:10.5px;cursor:pointer;
  padding:2px 9px;border-radius:5px;border:1px solid #d8d0bd;background:#fffdf8;color:#6f6a5d}
.syn-mini .sm-b:hover{border-color:#b9ae94;color:var(--ink)}
@media print{.syn-mini{break-inside:avoid}}

/* ── 新建病例删除（本机数据，仅 NEWCASES 可删）──────────────────
   .row 本身点了就进病例，所以按钮必须能被单独点中且不冒泡。 */
.row-x{flex:none;margin-left:2px;font:inherit;font-size:10px;line-height:1;cursor:pointer;
  padding:3px 6px;border-radius:4px;border:1px solid #ddd5c2;background:#fffdf8;color:#a49c8b;
  transition:all .16s}
.row-x:hover{border-color:#c9b9a0;color:#8a5a48;background:#fdf6f2}
.row-x.ask{border-color:#c07a63;background:#fbeee8;color:#9c4a33;font-weight:700;
  padding:3px 8px;white-space:nowrap}
.btn.dang{border-color:#c07a63;background:#fbeee8;color:#9c4a33}

/* ── 出生日期手填 + 生肖 ─────────────────────────────────────
   门诊病历上的生日常写作「1958.3」「1958年3月」，日历控件反而慢；
   故改手填文本框，右侧直接回显生肖与推算年龄。 */
.np-brow{display:flex;gap:7px;align-items:center}
.np-brow input{flex:1;min-width:0}
.np-zodiac{flex:none;min-width:50px;text-align:center;font-size:11px;letter-spacing:.8px;
  padding:5px 8px;border-radius:8px;border:1px dashed #dfe6f0;background:#fafbfd;
  color:#a8b3c4;white-space:nowrap;transition:all .18s}
.np-zodiac.on{border-style:solid;border-color:#d6c7a4;background:#fdf8ec;color:#8a6a32;font-weight:700;
  letter-spacing:1px}
.np-f input[readonly]{background:#f6f8fb;color:#66707f;cursor:default;
  font-variant-numeric:tabular-nums;letter-spacing:.5px}

/* ── 漏斗分层进度（屏② 反问卡）───────────────────────────── */
.pb-lad{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:2px 0 10px;padding:7px 10px;
  border:1px dashed var(--line);border-radius:8px;background:#fbfcfe}
.pb-lad-i{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#9aa8bd;
  padding:2px 8px;border-radius:11px;border:1px solid transparent}
.pb-lad-i b{width:15px;height:15px;line-height:15px;text-align:center;border-radius:50%;
  background:#e8eef7;color:#8a97a8;font-size:9.5px;font-weight:700}
.pb-lad-i i{font-style:normal;font-family:var(--mono);font-size:9.5px;color:#a3562f}
.pb-lad-i.done{color:var(--green);border-color:var(--green-b);background:var(--green-t)}
.pb-lad-i.done b{background:var(--green);color:#fff}
.pb-lad-i.on{color:var(--blue-d);border-color:var(--blue-b);background:var(--blue-t);font-weight:700}
.pb-lad-i.on b{background:var(--blue);color:#fff}
.pb-lad em{font-style:normal;color:#c8d2e0;font-size:11px}
.pb-lad-n{margin-left:auto;font-size:10.5px;color:#8a97a8}
.pb-badge.lyr{border-color:#d9c9a6;background:#fdfaf2;color:#8a6f3c}

/* ── 辨证逻辑链卡（屏④）────────────────────────────────── */
.arg-l{display:flex;flex-direction:column;gap:0}
.arg-r{display:grid;grid-template-columns:118px 1fr;gap:10px;padding:8px 0;border-bottom:1px dotted var(--line)}
.arg-r:last-child{border-bottom:none}
.arg-k b{font-family:var(--serif);font-size:13.5px;color:var(--ink);letter-spacing:1px}
.arg-k span{display:block;font-size:10px;color:#9aa8bd;margin-top:2px}
.arg-v{font-size:12px;line-height:1.8;color:#3c4a63}
.arg-s{grid-column:2;font-size:10px;color:#a9b4c5}
.arg-a{text-align:center;color:#c8d2e0;font-size:11px;line-height:1}
.arg-note{margin-top:9px;font-size:10.5px;color:#9aa8bd;line-height:1.75;border-top:1px solid var(--line);padding-top:8px}
.arg-vl{margin-bottom:1px}
.arg-ev{margin-top:5px;padding:5px 8px;background:#f7f9fc;border-left:2px solid #cfdcee;border-radius:0 5px 5px 0}
.aev{font-size:11px;line-height:1.75;color:#4a5a73;display:flex;gap:6px;align-items:flex-start}
.aev-t{flex:1}
.aev-s{flex:none;max-width:44%;text-align:right;color:#9aa8bd;font-size:9.8px;line-height:1.6}
.arg-gap{margin-top:5px;font-size:11px;line-height:1.7;color:#8a6a28;background:#fdf9ef;
  border-left:2px solid #e2c98a;border-radius:0 5px 5px 0;padding:5px 8px}
.arg-card.compact .arg-ev{display:none}
.arg-card.compact .arg-gap{display:none}
@media(max-width:760px){.aev{flex-direction:column;gap:1px}.aev-s{max-width:none;text-align:left}}
@media(max-width:760px){.arg-r{grid-template-columns:1fr}.arg-s{grid-column:1}}

/* ── 运气：不相涉一行 / 相涉关系段 ───────────────────────── */
.yq-flat{font-size:11.8px;color:#4a4132;line-height:1.9;background:#fdfaf2;border:1px solid #efe6d2;border-radius:7px;padding:8px 11px}
.yq-rel{margin-top:10px;border:1px solid #cfdff7;border-radius:8px;background:#f7faff;padding:9px 12px}
.yq-rel-k{font-size:10.5px;letter-spacing:1.2px;color:var(--blue-d);font-weight:700}
.yq-rel-t{font-size:12.2px;line-height:1.95;color:#22314f;margin-top:4px}
.yq-rel-n{margin-top:6px;font-size:10.5px;color:#7c8aa3;line-height:1.7}

/* ── 脉三维实测值（屏② 脉象面板）────────────────────────── */
.pn-wrap{margin:9px 0 10px;padding:9px 11px;border:1px dashed #d9e2ef;border-radius:9px;background:#fbfcfe}
.pn-head{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;color:var(--sub);letter-spacing:.5px;margin-bottom:8px}
.pn-badge{font-weight:400;font-size:9.5px;color:#5b7291;background:#eef3fa;border:1px solid #dbe5f2;border-radius:9px;padding:1px 6px;letter-spacing:0}
.pn-note{font-weight:400;font-size:10px;color:#93a0b5;letter-spacing:0;margin-left:auto}
.pn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pn-cell{display:flex;flex-direction:column;gap:3px;min-width:0}
.pn-cell label{font-size:10.5px;color:var(--sub);font-weight:600}
.pn-cell label i{font-style:normal;font-size:9.5px;color:#a9b4c5;margin-left:3px;font-weight:400}
.pn-in{width:100%;box-sizing:border-box;border:1px solid #dfe6f0;border-radius:7px;padding:6px 8px;
  font-family:var(--mono);font-size:14px;color:var(--ink);background:#fff;outline:none;transition:.15s}
.pn-in:hover{border-color:#c3d3e8}
.pn-in:focus{border-color:#c8ad76;box-shadow:0 0 0 3px #f7efdd}
.pn-in.clash{border-color:#d9c9a6;background:#fffdf6}
.pn-band{font-size:10px;color:#a3aebe;line-height:1.5;min-height:15px}
.pn-band.hit{color:var(--blue-d);font-weight:600}
.pn-band.clash{color:#a3562f}
.pn-band.out{color:var(--red)}
.pn-how{font-size:9.5px;color:#b6c0cd;line-height:1.45}
.pn-sum{margin-top:9px;padding-top:8px;border-top:1px dotted var(--line);
  font-size:10.5px;color:#4a5a75;line-height:1.85}
.pn-sum b{color:var(--blue-d);margin-right:4px}
.pn-sum i{font-style:normal;color:#93a0b5;margin-left:5px}
.pn-sep{color:#c8d2e0;margin:0 5px}
.tm-chip em{font-style:normal;font-family:var(--mono);font-size:9.5px;color:#93a0b5;margin-left:4px;letter-spacing:0}
.tm-chip.on em{color:rgba(255,255,255,.7)}
@media(max-width:820px){.pn-grid{grid-template-columns:1fr}.pn-note{display:none}}

/* ═══ 回看工具条（2026-11-02 用户定：每案例可返回、可回看） ═══ */
.trailbar{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  padding:8px 12px;margin-bottom:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);
  border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 14px rgba(15,44,115,.06)}
.trailbar .tr-lab{font-size:11px;color:var(--sub);letter-spacing:.2em;margin-right:2px}
.tr-chip{border:1px solid var(--line);background:var(--panel2);color:var(--sub);border-radius:20px;
  padding:3px 11px;font-size:11.5px;cursor:pointer;font-family:var(--sans)}
.tr-chip.ok{color:var(--blue);border-color:var(--blue-b);background:var(--blue-t)}
.tr-chip.cur{color:#fff;background:var(--blue);border-color:var(--blue);font-weight:600}
.tr-chip.lock{opacity:.45;cursor:not-allowed}
.tr-chip:not(.lock):hover{border-color:var(--blue-b)}
.tr-sp{flex:1}

/* ═══ 八纲立方 · 病机确认浮层 ═══ */
#bg3dPanel{position:fixed;inset:0;z-index:96;display:none;background:rgba(23,35,59,.55);backdrop-filter:blur(3px)}
#bg3dPanel.on{display:flex;align-items:stretch;justify-content:center}

/* ── 病理推演沙盘全屏浮层（屏④唤起 · iframe 桥接 sphere3d.html）── */
#sphPanel{position:fixed;inset:0;z-index:96;display:none;background:rgba(23,35,59,.55);backdrop-filter:blur(3px)}
#sphPanel.on{display:flex;align-items:center;justify-content:center}
.sp-box{width:min(1320px,97vw);height:min(880px,95vh);background:#0a111a;border-radius:14px;
  box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;animation:fin .25s}
.sp-box .cp-head{background:#fff}
.sp-box .cp-head b{font-size:15px}
.sp-box .cp-head .sh-tip{margin-left:auto;color:var(--amber);font-size:11.5px}
.sp-box .cp-head .cp-x{margin-left:6px}
.sp-box iframe{flex:1;border:0;width:100%;background:#0a111a}
#sphLoading{position:absolute;inset:52px 0 0;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;
  color:#8fb3d9;font-size:13.5px;line-height:2;background:#0a111a;z-index:1}
#sphLoading i{font-style:normal;font-size:11.5px;color:#5a7089}
.sp-box{position:relative}
.sp-box.loaded #sphLoading{display:none}
body.bjlock{overflow:hidden}
.bj-box{flex:1;margin:26px 4vw;background:var(--panel);border-radius:14px;box-shadow:var(--shadow);
  display:flex;flex-direction:column;overflow:hidden;min-width:0}
.bj-head{display:flex;align-items:center;gap:12px;padding:13px 20px;border-bottom:1px solid var(--line);background:#f7f9fc}
.bj-head b{font-size:15.5px;letter-spacing:1px}
.bj-head .bj-sub{font-size:11.5px;color:var(--sub)}
.bj-head .bj-sp{flex:1}
.bj-stamp{display:inline-flex;align-items:center;gap:6px;color:var(--jade);font-weight:700;font-size:12.5px}
.bj-stamp i{font-style:normal;border:1.6px solid var(--jade);border-radius:6px;padding:1px 8px;transform:rotate(-2deg)}
.bj-main{flex:1;display:flex;min-height:0}
.bj-stage{flex:1.55;position:relative;min-width:0}
.bj-stage canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab}
.bj-stage canvas:active{cursor:grabbing}
.bj-hint{position:absolute;right:14px;bottom:12px;font-size:11.5px;color:var(--sub);text-align:right;line-height:1.7;pointer-events:none}
.bj-views{position:absolute;top:10px;left:12px;display:flex;gap:6px;z-index:2}
.bj-views .btn{background:color-mix(in srgb,var(--panel) 82%,transparent);backdrop-filter:blur(3px)}
.bj-views .btn.on{border-color:var(--pri);color:var(--pri);font-weight:700}
/* 立体档：iframe 里是 three 场景（site/bagang3d-solid/），与 canvas 二选一显示 */
.bj-solid{position:absolute;inset:0;width:100%;height:100%;border:0;background:#eef3f9;display:none;z-index:1}
.bj-solid.on{display:block}
.bj-side{flex:1;max-width:410px;border-left:1px solid var(--line);overflow-y:auto;padding:16px 18px 24px;background:var(--panel)}
.bj-kick{font-size:11px;color:var(--sub);letter-spacing:.14em;margin-bottom:3px}
.bj-name{font-size:19px;font-weight:800;letter-spacing:.02em}
.bj-ba{font-size:14px;font-weight:700;color:var(--blue);margin:6px 0 12px;letter-spacing:.04em}
.bj-ba .tag{margin-left:8px}
.bj-ax{border:1px solid var(--line);border-radius:10px;padding:9px 12px 7px;margin-bottom:8px}
.bj-axt{display:flex;justify-content:space-between;font-size:11px;color:var(--sub);margin-bottom:5px}
.bj-bar{position:relative;height:8px;border-radius:6px;margin:3px 0 2px}
.bj-bar.bl{background:linear-gradient(90deg,#dbe5f1,#c3d4ea)}
.bj-bar.hr{background:linear-gradient(90deg,#4a76ba,#d8dee9 50%,#c65434)}
.bj-bar.xs{background:linear-gradient(90deg,#9db8a8,#e4e7ea 50%,#d89a5a)}
.bj-mk{position:absolute;top:-4px;width:4px;height:16px;border-radius:3px;background:var(--ink);
  box-shadow:0 0 0 2px #fff;transform:translateX(-2px)}
.bj-sec{margin-top:14px}
.bj-sec h4{font-size:12px;color:var(--sub);letter-spacing:.08em;margin-bottom:7px;font-weight:600}
.bj-org{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:12.5px}
.bj-org:last-child{border-bottom:none}
.bj-dot{width:11px;height:11px;border-radius:50%;background:var(--c);flex:none}
.bj-dot.xu{background:transparent;border:2px dashed var(--c)}
.bj-or{color:#9a4a2a;font-size:11.5px}
.bj-or:has(+ .bj-ow){color:inherit}
.bj-ow{margin-left:auto;color:var(--sub);font-size:11px}
.bj-mech{font-size:13px;line-height:1.85;background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:10px 13px}
.bj-gap{border:1px solid var(--amber-b);background:var(--amber-t);color:var(--gold);border-radius:10px;padding:12px 14px;font-size:12.5px;line-height:1.8}
.bj-confirm{margin-top:16px}
.bj-confirm .btn{padding:11px;font-size:14px}
.bj-cn{color:var(--sub);font-size:11px;line-height:1.7;margin-top:7px}
.bj-doneok{color:var(--jade);font-weight:600;font-size:12.5px;background:var(--green-t);
  border:1px solid var(--green-b);border-radius:10px;padding:10px 13px}
.bj-foot{margin-top:18px;padding-top:10px;border-top:1px solid var(--line);color:var(--sub);font-size:10.5px;line-height:1.8}

/* ═══ 辨证结论条 · 八纲立方入口（2026-11-02 用户定：放在结论处） ═══ */
.concbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  background:linear-gradient(180deg,#fbfdff,#f5f9ff);border:1px solid var(--blue-b);
  border-left:4px solid var(--blue);border-radius:10px;padding:10px 14px;margin-bottom:12px;
  box-shadow:0 2px 10px rgba(15,44,115,.05)}
.concbar.ok{border-color:var(--green-b);border-left-color:var(--jade);background:linear-gradient(180deg,#fbfefc,#f3fbf6)}
.cb-k{font-size:11px;letter-spacing:.18em;color:var(--blue);font-weight:700;flex:none}
.concbar.ok .cb-k{color:var(--jade)}
.cb-v{display:flex;align-items:baseline;gap:9px;min-width:0}
.cb-v b{font-size:16px;letter-spacing:.02em}
.cb-v span{font-size:12.5px;color:var(--sub)}
.cb-ba{font-size:12px;color:var(--sub);background:#fff;border:1px solid var(--line);
  border-radius:20px;padding:3px 11px;white-space:nowrap}
.cb-ba b{color:var(--ink);letter-spacing:.06em}
.cb-ba.dim{color:#98a4b8;background:transparent;border-style:dashed}
.cb-sp{flex:1}
.cb-hint{font-size:11px;color:var(--sub)}
.cb-stamp{font-size:12px;color:var(--jade);font-weight:600;background:var(--green-t);
  border:1px solid var(--green-b);border-radius:20px;padding:3px 11px;white-space:nowrap}
.concbar .btn{padding:8px 14px;font-size:13px;white-space:nowrap}
.preview3d{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;
  font-size:12px;color:var(--sub);background:var(--panel2);border:1px dashed var(--line);
  border-radius:10px;padding:9px 13px}
.preview3d b{color:var(--ink)}
.preview3d .btn{margin-left:auto}
@media (max-width:1180px){ .cb-hint{display:none} }

/* 签认章出现时轻闪一下：让「点到了」这件事在画面上有回应 */
.bj-stamp.flash{animation:bjflash .9s ease-out}
@keyframes bjflash{
  0%{transform:scale(.86);opacity:0;box-shadow:0 0 0 0 rgba(15,138,95,.45)}
  45%{transform:scale(1.06);opacity:1}
  100%{transform:scale(1);opacity:1;box-shadow:0 0 0 12px rgba(15,138,95,0)}
}
.bj-doneok .btn.sm{margin-left:10px;padding:3px 10px;font-size:11.5px;
  background:#fff;border:1px solid var(--green-b);color:var(--jade)}
.bj-doneok .btn.sm:hover{background:var(--green-t)}

/* ── 复看模式 · 只读自动回放（用户 2026-11-02 定：看完病的推演可像放映一样重走） ── */
.rpbar{position:sticky;top:0;z-index:7;display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  padding:8px 12px;margin-bottom:12px;background:var(--amber-t);backdrop-filter:blur(6px);
  border:1px solid var(--amber-b);border-radius:10px;box-shadow:0 4px 14px rgba(180,83,9,.09)}
.rpbar .rp-tag{font-size:11px;font-weight:700;color:#fff;background:var(--amber);border-radius:20px;padding:3px 11px;letter-spacing:.06em;white-space:nowrap}
.rpbar .rp-pos{font-size:12.5px;font-weight:600;color:var(--amber);white-space:nowrap}
.rpbar .rp-dots{display:flex;gap:5px;align-items:center}
.rp-dot{width:8px;height:8px;border-radius:50%;background:#fff;border:1px solid var(--amber-b);flex:none}
.rp-dot.done{background:var(--amber);border-color:var(--amber)}
.rp-dot.cur{background:var(--amber);border-color:var(--amber);box-shadow:0 0 0 3px rgba(180,83,9,.18)}
.rpbar .rp-sp{flex:1}

/* ── 分诊问询（先问患者定初诊/复诊，用户 2026-11-02 定） ── */
.tri-q{font-size:15px;font-weight:600;color:var(--ink);padding:10px 12px;border-radius:8px;
  background:var(--blue-t);border-left:3px solid var(--blue);margin:8px 0 4px}
.tri-in{flex:1;min-width:240px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;
  font-size:13px;font-family:var(--sans);color:var(--ink)}
.tri-in:focus{outline:none;border-color:var(--blue-b)}

/* ── 化验单上传与读取（初诊/复诊共用，用户 2026-11-02 定） ── */
.lab-filebtn{position:relative;overflow:hidden;font-weight:600;background:var(--blue-t);
  border-color:var(--blue-b);color:var(--blue)}
.lab-filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.lab-files{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.lab-file{display:flex;align-items:center;gap:10px;padding:7px 10px;border:1px solid var(--line);
  border-radius:8px;background:#fff}
.lab-file .lab-thumb{width:52px;height:52px;object-fit:cover;border-radius:6px;border:1px solid var(--line);cursor:zoom-in}
.lab-file .lab-ic{font-size:22px;width:52px;text-align:center}
.lab-file .lab-fm{display:flex;flex-direction:column;min-width:0;flex:1}
.lab-file .lab-fm b{font-size:12.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lab-file .lab-fm span{font-size:11px;color:var(--sub)}
.lab-draft h6,.lab-done h6{font-size:12.5px;color:var(--ink);margin:10px 0 6px;display:flex;align-items:center;gap:8px}
.lab-in{width:100%;border:1px solid var(--line);border-radius:6px;padding:4px 7px;font-size:12px;
  font-family:var(--sans);color:var(--ink);box-sizing:border-box}
.lab-v{width:76px}.lab-u{width:84px}.lab-r{width:110px}.lab-f{width:56px;text-align:center}
.lab-flag{color:var(--red);font-weight:700}
.lab-done table td{font-size:12px}
.labview{position:fixed;inset:0;z-index:95;background:rgba(23,35,59,.55);display:flex;
  align-items:center;justify-content:center;padding:24px}
.labview-box{background:#fff;border-radius:12px;padding:12px;max-width:min(1000px,92vw);
  max-height:90vh;overflow:auto;box-shadow:0 18px 60px rgba(10,20,40,.35)}
.labview-h{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px}

/* ── 口述 → 中医语言 · 翻译层（屏②，用户 2026-11-02 定） ── */
.tr-tbl td{font-size:12.5px;padding:6px 8px;vertical-align:middle}
.tr-tbl .tr-arr{color:var(--sub);width:26px;text-align:center}
.tr-tbl .tr-src{color:var(--sub);font-size:11.5px}
.tr-miss{margin-top:10px;padding:9px 12px;border-radius:8px;background:var(--amber-t);
  border-left:3px solid var(--amber);font-size:12.5px}
.tr-miss-i{display:inline-block;background:#fff;border:1px solid var(--amber-b);
  border-radius:14px;padding:2px 10px;margin:3px 6px 3px 0;font-size:12px}
.tr-miss-n{color:var(--sub);font-size:11.5px;margin-top:4px}
.tr-foot{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line);
  font-size:11.5px;color:var(--sub);line-height:1.6}

/* ── 口述逐条对账（批次十六）──────────────────────────────
   一条口述一行，五列同时成立：原句 / 读作 / 计入哪一证 / 归宿 / 处置。
   归宿用底色区分严重度：未识别与识别未计分是「洞」，淡琥珀底；否定与叙述是正常过滤，压灰。 */
.au-box{margin:6px 0 2px}
.au-hd{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;margin-bottom:6px}
.au-hd-n{color:var(--sub);font-size:11.5px}
.au-chips{display:inline-flex;gap:4px;flex-wrap:wrap;margin-left:auto}
.au-tbl{width:100%;border-collapse:collapse;table-layout:auto}
.au-tbl th{font-size:11px;color:var(--sub);font-weight:600;text-align:left;
  padding:4px 7px;border-bottom:1px solid var(--line);white-space:nowrap;letter-spacing:.2px}
.au-tbl td{font-size:12.5px;padding:5px 7px;border-bottom:1px dashed var(--line);vertical-align:top;line-height:1.5}
.au-tbl tr:last-child td{border-bottom:none}
.au-n{color:var(--sub);width:24px;font-size:11.5px}
.au-t{min-width:150px;max-width:240px}
.au-src{display:inline-block;font-size:10px;color:var(--sub);border:1px solid var(--line);
  border-radius:4px;padding:0 4px;margin-right:5px;background:var(--panel2);white-space:nowrap}
.au-w{color:var(--sub)}
.au-none{color:#9aa8bd}
.au-m b{color:var(--ink)}
.au-r.au-unknown td{background:rgba(180,83,9,.055)}
.au-r.au-symOnly td{background:rgba(180,83,9,.03)}
.au-r.au-neg .au-t,.au-r.au-narr .au-t,.au-r.au-ign .au-t{color:var(--sub)}
.au-a{white-space:nowrap;text-align:right}
.au-a .btn.sm{margin-left:4px}
.au-gap{margin-top:8px;padding:8px 11px;border-radius:8px;background:var(--amber-t);
  border-left:3px solid var(--amber);font-size:12px;line-height:1.7}
.au-gap-i{display:inline-block;background:#fff;border:1px solid var(--amber-b);border-radius:14px;
  padding:1px 9px;margin:3px 6px 3px 0;font-size:11.5px;font-weight:600}
.au-gap-n{color:var(--sub);font-size:11.5px;margin-top:3px}
.au-q{margin-top:8px;padding-top:7px;border-top:1px dashed var(--line);display:flex;
  align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}
.au-q .hint{font-size:11.5px}
.au-sub{margin:10px 0 2px;font-size:11px;color:var(--sub);letter-spacing:.4px;
  padding-top:7px;border-top:1px dashed var(--line)}
@media (max-width:1100px){
  .au-t{max-width:180px}
  .au-tbl th:nth-child(3),.au-tbl td:nth-child(3){display:none}
}
#transSel{min-width:220px}

/* ── 桌面知识库批次一：红旗闸门 + 指标中医参鉴（2026-11-02） ── */
.rf-box{margin:6px 0 10px;padding:9px 12px;border-radius:8px;background:rgba(198,40,40,.06);
  border:1px solid rgba(198,40,40,.45);border-left:4px solid #c62828;color:var(--ink);font-size:12.5px;line-height:1.7}
.rf-note{margin-top:4px;color:var(--sub);font-size:11.5px}
.lab-tcm{margin-top:10px;padding-top:8px;border-top:1px dashed var(--line)}
.lab-tcm h6{font-size:12.5px;color:var(--ink);margin:4px 0 6px}
.lab-tcm-row{padding:5px 0;font-size:12px;line-height:1.65;border-bottom:1px dotted var(--line)}
.lab-tcm-row b{margin-right:6px}

/* ── 桌面知识库批次二：慢性病参鉴 + 红旗转介闸（2026-11-02） ── */
.bing-box{margin:8px 0 10px;padding:10px 12px;border-radius:8px;background:rgba(106,27,154,.05);
  border:1px solid rgba(106,27,154,.35);border-left:4px solid #6a1b9a}
.bing-tt{font-size:11.5px;color:var(--sub);margin-bottom:6px}
.bing-item{padding:8px 0;border-top:1px dashed var(--line);font-size:12.5px;line-height:1.7}
.bing-item:first-of-type{border-top:0;padding-top:2px}
.bing-hd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bing-def{font-size:12px;margin-top:3px}
.bing-syms{font-size:12px;margin-top:4px;display:flex;flex-wrap:wrap;gap:4px;align-items:center;color:var(--sub)}
.bing-sym{border:1px solid var(--line);border-radius:10px;padding:0 8px;font-size:11px;color:var(--sub);background:transparent}
.bing-sym.hit{border-color:#c62828;color:#c62828;font-weight:600;background:rgba(198,40,40,.06)}
.bing-fx{font-size:12px;margin-top:3px}
.bing-tr{font-size:11.5px;margin-top:3px;color:var(--sub)}
.bing-ref{border-left-color:#8a1c1c}

/* ── 桌面知识库批次三：分子网络参鉴（网络药理学） ── */
.npl-box{margin:8px 0 10px;padding:10px 12px;border-radius:8px;background:rgba(13,71,161,.05);
  border:1px solid rgba(13,71,161,.35);border-left:4px solid #0d47a1}
.npl-tt{font-size:11.5px;color:var(--sub);margin-bottom:6px}
.npl-item{padding:8px 0;border-top:1px dashed var(--line);font-size:12.5px;line-height:1.7}
.npl-item:first-of-type{border-top:0;padding-top:2px}
.npl-hd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.npl-def{font-size:12px;margin-top:3px}
.npl-fx{font-size:12.5px;margin-top:4px}
.npl-jj{font-size:12px;margin-top:3px;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}
.npl-role{display:inline-block;border:1px solid var(--line);border-radius:10px;padding:0 8px;font-size:11px;color:var(--sub)}
.npl-why{color:var(--sub)}
.npl-hubs{font-size:11.5px;margin-top:4px;color:var(--sub);line-height:1.9}
.npl-hub{display:inline-block;border:1px solid rgba(13,71,161,.4);border-radius:9px;padding:0 7px;
  margin:2px 4px 2px 0;font-size:10.5px;color:#0d47a1;font-family:Consolas,monospace}
.npl-hub.dim{border-color:var(--line);color:var(--sub)}
.npl-warn{font-size:12px;margin-top:4px;color:#c62828;font-weight:600}
.npl-zt{margin-top:6px}
.npl-zt th{font-size:11px;color:var(--sub);text-align:left;padding:3px 8px}
.npl-zt td{font-size:11.5px;padding:4px 8px;vertical-align:top}
.npl-tr{font-size:11.5px;color:var(--sub);margin-top:4px}
.npl-sec{margin-top:8px;padding-top:6px;border-top:1px dashed var(--line);font-size:12px;line-height:1.7}
.npl-tm{margin-top:2px}
.npl-safe div{margin-top:2px;font-size:12px}

/* ── 桌面知识库批次四：用药安全闸 + 中成药参鉴（2026-11-02） ── */
.drug-box{margin:8px 0 10px;padding:10px 12px;border-radius:8px;background:rgba(183,28,28,.05);
  border:1px solid rgba(183,28,28,.4);border-left:4px solid #b71c1c}
.dg-tt{font-size:11.5px;color:var(--sub);margin-bottom:6px}
.dg-item{padding:7px 0;border-top:1px dashed var(--line);font-size:12.5px;line-height:1.7}
.dg-item:first-of-type{border-top:0;padding-top:2px}
.dg-lv{display:inline-block;border-radius:9px;padding:0 7px;font-size:10.5px;margin-right:6px;
  border:1px solid currentColor}
.dg-item.dg-l1{color:#b71c1c;font-weight:600}
.dg-item.dg-l2{color:#e65100}
.dg-item.dg-l3{color:var(--sub)}
.dg-item.dg-l4{color:#2e7d32}
.dg-tp{font-size:11px;color:var(--sub);margin-left:6px}
.dg-risk,.dg-adv{font-weight:400;font-size:12px;color:var(--txt);margin-top:2px}
.dg-adv{color:var(--sub)}
.pat-box{margin:8px 0 10px;padding:10px 12px;border-radius:8px;background:rgba(0,105,92,.05);
  border:1px solid rgba(0,105,92,.35);border-left:4px solid #00695c}
.pat-tt{font-size:11.5px;color:var(--sub);margin-bottom:6px}
.pat-item{padding:8px 0;border-top:1px dashed var(--line);font-size:12.5px;line-height:1.7}
.pat-item:first-of-type{border-top:0;padding-top:2px}
.pat-hd{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.pat-fx{font-size:12px;color:var(--sub)}
.pat-def{font-size:12px;margin-top:3px}
.pat-syms{font-size:12px;margin-top:4px;display:flex;flex-wrap:wrap;gap:4px;align-items:center;color:var(--sub)}
.pat-ban{font-size:12px;margin-top:4px;color:#c62828;font-weight:600}
.pat-jz{font-size:12px;margin-top:3px}
.drug-box.dg-empty{background:transparent;border-color:var(--line);border-left-color:var(--sub)}
.dg-in{margin-top:6px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dg-in .tri-in{flex:1 1 320px}

/* ── 桌面知识库批次六：四诊补齐（眼象 / 金镜舌 / 脉释义 / 三镜合参） ── */
.ey-panel .ey-grid{margin-bottom:2px}
.ey-row{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;padding:5px 0;border-top:1px dashed var(--line)}
.ey-row:first-of-type{border-top:0}
.ey-lab{flex:0 0 96px;font-size:12px;color:var(--sub);padding-top:4px}
.ey-lab i{display:block;font-style:normal;font-size:10.5px;opacity:.75}
.ey-opts{flex:1 1 420px;display:flex;gap:5px;flex-wrap:wrap}
.ey-chip{border:1px solid var(--line);background:transparent;color:var(--txt);border-radius:12px;
  padding:2px 9px;font-size:11.5px;cursor:pointer;transition:.12s}
.ey-chip:hover{border-color:#0d47a1;color:#0d47a1}
.ey-chip.on{background:rgba(13,71,161,.12);border-color:#0d47a1;color:#0d47a1;font-weight:600}
.ey-reads{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:8px;padding-top:7px;border-top:1px dashed var(--line)}
.ey-rt{font-size:11px;color:var(--sub)}
.ey-rd{font-size:11.5px;color:var(--sub);border:1px solid var(--line);border-radius:9px;padding:1px 8px}
.ey-rd b{color:var(--txt);font-weight:600;margin-right:3px}

.jj-wrap{margin-top:8px}
.jj-pick{display:flex;gap:8px;align-items:center;margin-top:6px}
.jj-pick select{flex:1 1 260px}
.jj-info{margin-top:8px;padding:8px 10px;border-radius:8px;background:rgba(106,27,154,.05);
  border:1px solid rgba(106,27,154,.3);border-left:3px solid #6a1b9a;font-size:12px;line-height:1.75}
.jj-hd{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:2px}
.jj-l{font-size:12px}
.jj-src{font-size:11px;color:var(--sub);margin-left:6px}

.mai-gl{margin-top:8px;display:flex;gap:8px;flex-wrap:wrap;align-items:baseline;font-size:11.5px}
.mg{border:1px solid var(--line);border-radius:8px;padding:2px 9px;color:var(--sub)}
.mg b{color:var(--txt);font-weight:600;margin-right:5px}
.mg i{font-style:normal;opacity:.8;margin-right:5px}
.mg em{font-style:normal;color:#0d47a1;margin-left:5px}
.mg-src{font-size:10.5px;color:var(--sub)}

.sz-box{margin:10px 0;padding:10px 12px;border-radius:8px;background:rgba(230,81,0,.04);
  border:1px solid rgba(230,81,0,.3);border-left:4px solid #e65100}
.sz-tt{font-size:11.5px;color:var(--sub);margin-bottom:6px;display:flex;gap:10px;flex-wrap:wrap;align-items:baseline}
.sz-lang{color:var(--txt);font-weight:600;font-size:12px}
.szr{padding:7px 0;border-top:1px dashed var(--line);font-size:12.5px;line-height:1.7}
.szr:first-of-type{border-top:0;padding-top:2px}
.szr.three{background:rgba(46,125,50,.05);border-radius:6px;padding-left:8px;padding-right:8px}
.szr-hd{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.sz-hit{font-size:10.5px;color:#2e7d32;border:1px solid rgba(46,125,50,.45);border-radius:8px;padding:0 6px}
.szr-al{font-size:11px;color:var(--sub);margin-top:2px}
.szr-sig{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.sz-sig{font-size:11px;color:var(--sub);border:1px dashed var(--line);border-radius:9px;padding:1px 8px}
.sz-sig.on{color:#e65100;border-color:rgba(230,81,0,.5);border-style:solid;font-weight:600}
.sz-empty{font-size:12px;color:var(--sub);padding:4px 0}

/* ══════════════════════════════════════════════════════════════════
   药典全目 · 《神农本草经》280 味（速查面板 + 审方逐味出处）
   等级章四色：A 绿 / B 灰 / C 琥珀 / D-E 红（均为「安全重标」，非原著三品）
   ══════════════════════════════════════════════════════════════════ */
#hbPanel{position:fixed;inset:0;z-index:95;background:rgba(23,35,59,.45);backdrop-filter:blur(3px);display:none;align-items:flex-start;justify-content:center;padding:44px 20px;overflow:auto}
#hbPanel.on{display:flex}
.hb-box{width:min(880px,100%);background:#fff;border-radius:14px;box-shadow:var(--shadow);overflow:hidden;animation:fin .25s;display:flex;flex-direction:column;max-height:calc(100vh - 88px)}
.hb-tools{padding:14px 22px 4px;border-bottom:1px solid var(--line);background:#fbfcfe}
.hb-q{width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-size:13px;font-family:inherit;color:var(--ink);background:#fff}
.hb-q:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-t)}
.hb-chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 12px}
.hb-chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:11.5px;color:var(--sub);transition:.15s}
.hb-chip em{font-style:normal;color:#9aa8bd;margin-left:5px;font-family:var(--mono);font-size:10.5px}
.hb-chip:hover{border-color:var(--blue-b);color:var(--blue)}
.hb-chip.on{border-color:var(--blue);color:var(--blue);background:var(--blue-t)}
.hb-chip.on em{color:var(--blue)}
.hb-stat{padding:9px 22px;font-size:11.5px;color:var(--sub);border-bottom:1px solid var(--line);background:#fff}
.hb-stat b{color:var(--ink);font-family:var(--mono)}
.hb-list{padding:4px 22px 10px;overflow:auto;flex:1}
.hb-row{border-bottom:1px dashed var(--line);padding:11px 0}
.hb-row:last-child{border-bottom:0}
.hb-rh{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.hb-rh b{font-size:13.5px;color:var(--ink)}
.hb-rx{font-size:11.5px;color:var(--blue);margin-top:3px;letter-spacing:.3px}
.hb-rz{font-size:12px;color:#4a5a70;line-height:1.7;margin-top:2px}
.hb-none{padding:26px 0;text-align:center;color:#9aa8bd;font-size:12.5px}
.hb-foot{padding:11px 22px 14px;border-top:1px solid var(--line);background:#f7f9fc;font-size:10.5px;color:var(--sub);line-height:1.75}
.hb-g{display:inline-block;font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.4px;padding:1px 5px;border-radius:4px;border:1px solid var(--line);background:#f4f7fb;color:#66788f;line-height:1.5}
.hb-g.sm{font-size:9px;padding:0 4px}
.hb-g.ok{border-color:#b9dfc8;background:#eef8f1;color:#1f7a4a}
.hb-g.warn{border-color:#f0dfae;background:#fdf7e8;color:#9a6b12}
.hb-g.bad{border-color:var(--red-b);background:var(--red-t);color:var(--red)}
.hb-g.none{border-style:dashed;color:#9aa8bd;background:#fafbfd}
.hb-via{font-size:10.5px;color:#9aa8bd}
.hb-f{font-style:normal;font-size:9.5px;padding:0 5px;border-radius:4px;border:1px solid;line-height:1.6;white-space:nowrap}
.hb-f.tox{border-color:var(--red-b);background:var(--red-t);color:var(--red)}
.hb-f.prg{border-color:#e6c9e8;background:#fbf0fc;color:#8a3d92}
.hb-f.sup{border-color:var(--line);background:#f7f9fc;color:#8b97a8}
/* 本经外（后世本草源）：与「本经原文」在视觉上就分开，不给读者混读的机会 */
.hb-f.ext{border-color:#cfe0f4;background:#f2f7fd;color:#2f6ea8}
.hb-f.extok{border-color:#bfe0c8;background:#f1faf3;color:#2e7d4f}
/* 出处三态：原文（实底）/ 节录（虚线）/ 非原文（黄底）——扫一眼就知道这句是不是真原文 */
.hb-src{display:inline-block;font-style:normal;font-family:var(--mono);font-size:9px;letter-spacing:.3px;padding:0 5px;border-radius:4px;border:1px solid var(--line);background:#f7f9fc;color:#8b97a8;line-height:1.6;white-space:nowrap}
.hb-src.ok{border-color:#b9dfc8;background:#eef8f1;color:#1f7a4a}
.hb-src.warn{border-color:#f0dfae;background:#fdf7e8;color:#9a6b12}
.hb-pin{display:inline-block;font-style:normal;font-size:9.5px;padding:0 5px;border-radius:4px;border:1px solid #dfe4ec;background:#fbfcfe;color:#7b8a9e;line-height:1.6;white-space:nowrap}
.hbl-y{font-size:10.5px;color:#9aa8bd;line-height:1.7;margin-top:1px}
.hb-row.ext{background:#fbfdff}
.hb-row.ext .hb-rz{color:#5b6b82}
.hb-eq{margin-left:4px;padding:0 6px;border:1px dashed #cfe0f4;border-radius:4px;background:#f2f7fd;color:#2f6ea8;font:inherit;font-size:10px;line-height:1.7;cursor:pointer}
.hb-eq:hover{background:#e6f0fb;border-style:solid}
.hb-nm{border:0;background:none;padding:0;font:inherit;color:var(--ink);border-bottom:1px dotted #b9c6d8}
.hb-nm:hover{color:var(--blue);border-bottom-color:var(--blue)}
.hbblk{margin:14px 0 0;border:1px solid var(--line);border-radius:10px;background:#fcfdfe;padding:0 0 10px}
.hbblk-h{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:#f7f9fc;border-radius:10px 10px 0 0}
.hbblk-h b{font-size:12.5px;letter-spacing:.6px}
.hbblk-h span{font-size:10.5px;color:var(--sub)}
.hbblk-f{padding:9px 14px 0;font-size:10.5px;color:#9aa8bd;line-height:1.7}
.hbl{padding:9px 14px 0}
.hbl-h{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.hbl-h b{font-size:12.5px;color:var(--ink)}
.hbl-x{font-size:11px;color:var(--blue);margin-top:2px}
.hbl-z{font-size:11.5px;color:#4a5a70;line-height:1.7;margin-top:1px}
.hbl.miss .hbl-z{color:#9aa8bd}
@media (max-width:700px){#hbPanel{padding:16px 10px}.hb-box{max-height:calc(100vh - 32px)}}

/* ══════════════════════════════════════════════════════════════════
   条文库 · 金匮条文 / 经方家族 / 方证（速查面板四栏 + 屏⑤ 条文与谱系卡）
   ══════════════════════════════════════════════════════════════════ */
.tk-tabs{display:flex;gap:4px;padding:10px 22px 0;background:#f7f9fc;border-bottom:1px solid var(--line)}
.tk-tab{border:1px solid transparent;border-bottom:0;background:transparent;border-radius:8px 8px 0 0;padding:7px 13px;font-size:12px;color:var(--sub);letter-spacing:.4px}
.tk-tab em{font-style:normal;font-family:var(--mono);font-size:10px;color:#9aa8bd;margin-left:5px}
.tk-tab:hover{color:var(--blue)}
.tk-tab.on{background:#fff;border-color:var(--line);color:var(--blue);font-weight:600;margin-bottom:-1px}
.tk-tab.on em{color:var(--blue)}
.tk-row .tk-sub{font-size:11.5px;color:var(--sub)}
.tk-fang{font-style:normal;font-size:10px;color:var(--blue);border:1px solid var(--blue-b);background:var(--blue-t);border-radius:4px;padding:0 5px;line-height:1.7}
/* 卷标：伤寒 / 金匮 / 附篇——一眼看出这条出自哪本书 */
.tk-juan{font-style:normal;font-size:9.5px;letter-spacing:.5px;border-radius:3px;padding:0 4px;line-height:1.6;margin-right:5px;border:1px solid transparent}
.tk-juan.s-sh{color:#8a4b2a;background:#fdf1e7;border-color:#f0d8c4}
.tk-juan.s-jin{color:#2f6b4f;background:#eaf5ee;border-color:#cfe6d8}
.tk-juan.s-fu{color:#7a7f8c;background:#f2f3f6;border-color:#e2e5eb}
.tk-yuan{font-size:12.5px;color:#3d4c63;line-height:1.85;margin-top:5px;padding-left:9px;border-left:2px solid var(--line)}
.tk-fa{font-size:11.5px;color:var(--jade);border:1px solid var(--green-b);background:var(--green-t);border-radius:4px;padding:0 6px;line-height:1.7}
.tk-kv{font-size:12px;color:#3d4c63;line-height:1.8;margin-top:3px}
.tk-kv i{font-style:normal;color:#8b97a8;font-size:10.5px;letter-spacing:.5px;margin-right:7px;display:inline-block;min-width:38px}
.tk-ge{font-style:normal;font-size:10px;color:var(--gold);border:1px solid var(--gold-b);background:var(--gold-t);border-radius:4px;padding:0 5px;margin-left:6px}
/* 屏⑤ 条文与谱系卡 */
.tkcard{padding:0 0 12px;margin-bottom:12px}
.tkcard>h5{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 15px;border-bottom:1px solid var(--line)}
.tkcard .tk-id{padding:11px 15px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px}
.tkcard .tk-id i{font-style:normal;color:#8b97a8;font-size:10.5px;letter-spacing:.5px}
.tkcard .tk-id b{font-size:13.5px}
.tk-src{font-size:10.5px;color:var(--sub);font-family:var(--mono)}
.tk-fam-tag{font-size:10.5px;color:var(--jade);border:1px solid var(--green-b);background:var(--green-t);border-radius:4px;padding:0 6px;line-height:1.8}
.tk-fam-tag.none{color:#8b97a8;border-color:var(--line);background:#f7f9fc}
.tkcard .tk-kv{padding:0 15px}
.tk-ys{padding:8px 15px 0;display:grid;gap:8px}
.tk-y{border-left:2px solid var(--blue-b);padding:2px 0 2px 10px;background:#fbfcfe}
.tk-yh{font-size:11px;color:var(--blue);letter-spacing:.4px}
.tk-yh em{font-style:normal;font-size:9.5px;color:var(--amber);border:1px solid var(--amber-b);background:var(--amber-t);border-radius:4px;padding:0 5px;margin-left:6px}
.tk-yb{font-size:12.5px;color:#3d4c63;line-height:1.85;margin-top:2px}

/* 屏⑤ 原方组成（JKB 19 方）——照录原方分量，逐味标本方有没有 */
.jf-b{margin:10px 15px 0;border:1px solid var(--line);border-radius:8px;background:#fcfdff;overflow:hidden}
.jf-hd{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:8px 11px;background:#f6f9ff;border-bottom:1px solid var(--line);font-size:12px}
.jf-hd b{font-size:12.5px;color:var(--ink)}
.jf-hd span{font-size:10.5px;color:var(--sub);font-family:var(--mono)}
.jf-tag{font-style:normal;font-size:9.5px;color:var(--blue);border:1px solid var(--blue-b);background:var(--blue-t);border-radius:4px;padding:0 5px;line-height:1.7;margin-left:auto}
.jf-tag+.jf-tag{margin-left:0}
.jf-t{width:100%;border-collapse:collapse;font-size:11.5px}
.jf-t th{text-align:left;font-weight:600;font-size:10px;color:#8b97a8;letter-spacing:.4px;padding:6px 10px;border-bottom:1px solid var(--line);background:#fbfcfe}
.jf-t td{padding:5px 10px;border-bottom:1px solid #f0f3f8;color:#3d4c63;vertical-align:top}
.jf-t tr:last-child td{border-bottom:0}
.jf-t td b{color:var(--ink);font-size:12px}
.jf-tr{font-style:normal;font-size:9.5px;color:#8b97a8;border:1px solid var(--line);border-radius:3px;padding:0 4px;margin-left:4px;line-height:1.6}
.jf-tr.warn{color:var(--amber);border-color:var(--amber-b);background:var(--amber-t)}
.jf-yes{color:var(--jade);font-weight:600}
.jf-no{color:#b9c2d0}
.jf-dec,.jf-sp{padding:7px 11px;font-size:11.5px;color:#46536b;line-height:1.8;border-top:1px dashed var(--line)}
.jf-dec i,.jf-sp i{font-style:normal;font-size:10px;color:#8b97a8;letter-spacing:.4px;margin-right:6px}
.jf-sp span{display:inline-block;font-size:10.5px;color:var(--jade);background:var(--green-t);border:1px solid var(--green-b);border-radius:4px;padding:0 5px;margin:0 4px 2px 0;line-height:1.7}
.jf-diff{padding:7px 11px;font-size:11.5px;color:var(--gold);background:var(--gold-t);border-top:1px solid var(--gold-b)}
.jf-diff b{color:#7a5f14}
.jf-foot{padding:6px 11px;font-size:10px;color:#93a1b7;line-height:1.7;border-top:1px solid var(--line);background:#fbfcfe}

/* 患者姓名脱敏：马赛克块 */
.mk{display:inline-block;color:transparent!important;-webkit-text-fill-color:transparent;
  user-select:none;-webkit-user-select:none;cursor:default;border-radius:3px;padding:0 3px;
  line-height:1.12;letter-spacing:0;
  background-color:#78839a;
  background-image:
    linear-gradient(45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.2) 75%),
    linear-gradient(45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.2) 75%);
  background-size:6px 6px,6px 6px;background-position:0 0,3px 3px;
  -webkit-print-color-adjust:exact;print-color-adjust:exact}

/* =========================================================================
   折叠 · 后台区块（2026-11-05）
   医师主工作内容常显；引擎留痕、注家条文、辅助参鉴、校验说明一律收进折叠层。
   开合状态按块记在本机（localStorage gwFoldV1），切屏回来仍是原样。
   ========================================================================= */
.foldbox{border:1px solid var(--line);border-radius:9px;background:#fbfcfe;margin-bottom:12px;overflow:hidden}
.foldbox.mt12{margin-top:12px}
.foldbox>summary{list-style:none;cursor:pointer;user-select:none;display:flex;align-items:center;gap:9px;padding:10px 14px;font-size:12px;color:var(--sub);transition:.15s}
.foldbox>summary::-webkit-details-marker{display:none}
.foldbox>summary::before{content:'▸';color:var(--blue);font-size:10px;flex:none;transition:.15s}
.foldbox[open]>summary::before{content:'▾'}
.foldbox>summary:hover{background:#f2f7ff;color:var(--blue)}
.foldbox>summary b{font-size:12.5px;font-weight:700;color:var(--ink);letter-spacing:.3px}
.foldbox>summary .fd-meta{font-size:11px;color:var(--sub);letter-spacing:0}
.foldbox>summary .fd-tail{margin-left:auto;font-size:10.5px;color:#93a1b7;white-space:nowrap;letter-spacing:0}
.foldbox[open]>summary{border-bottom:1px solid var(--line);background:#f6f9ff}
.foldbox>.fd-body{padding:12px 14px;background:#fff}
.foldbox>.fd-body>*:last-child{margin-bottom:0}
/* 卡内嵌 / 包住既有卡：不另起边框，只占一行，避免双层框 */
.foldbox.plain{border:0;background:transparent;border-radius:0;margin:0 0 10px}
.foldbox.plain>summary{padding:7px 0;border-top:1px dashed var(--line)}
.foldbox.plain[open]>summary{border-bottom:0;background:transparent}
.foldbox.plain>summary:hover{background:transparent}
.foldbox.plain>.fd-body{padding:6px 0 2px;background:transparent}
/* 既有 .hud.card 直接变折叠：标题行即开关 */
.card.fold{padding:0;overflow:hidden}
.card.fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:13px 16px;user-select:none;transition:.15s}
.card.fold>summary::-webkit-details-marker{display:none}
.card.fold>summary h5{margin:0;flex:1}
.card.fold>summary::after{content:'▸';color:var(--blue);font-size:10px;margin-left:6px;transition:.15s}
.card.fold[open]>summary::after{content:'▾'}
.card.fold>summary:hover{background:#f7faff}
.card.fold[open]>summary{border-bottom:1px solid var(--line);background:#fbfcfe}
.card.fold>.fd-body{padding:14px 16px}
.card.fold>.fd-body>*:last-child{margin-bottom:0}

/* ── 右栏操作指引：默认收成窄条 ─────────────────────── */
#guide{position:relative}
#guideTog{position:absolute;top:9px;right:8px;width:22px;height:22px;border-radius:6px;border:1px solid var(--line);background:#fff;color:var(--sub);font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2;padding:0}
#guideTog:hover{border-color:var(--blue);color:var(--blue)}
#guide .gmini{display:none}
@media (min-width:881px){
  #guide.mini{width:46px;cursor:pointer}
  #guide.mini .gh,#guide.mini #gsteps,#guide.mini #gtell,#guide.mini #gfoot{display:none}
  #guide.mini .gmini{display:flex;flex-direction:column;align-items:center;gap:7px;padding:52px 0 12px;writing-mode:vertical-rl;letter-spacing:4px;font-size:12px;color:var(--sub);font-weight:600}
  #guide.mini #guideTog{right:11px}
  body.gmini #audit{right:46px}
  body.gmini #auditDraw{right:46px}
}

/* ── 底部 audit_log：一行常显，点开为抽屉 ───────────── */
#audit{cursor:pointer}
#audit .a-tog{margin-left:auto;color:#93a1b7;font-size:10px;flex:none;letter-spacing:.5px}
#audit:hover .a-tog{color:var(--blue)}
#auditDraw{position:fixed;left:216px;right:300px;bottom:30px;height:0;overflow:hidden;background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 24px rgba(15,44,115,.10);z-index:49;transition:height .18s ease}
body.aud-open #auditDraw{height:238px}
#auditDraw .ad-h{padding:9px 14px;border-bottom:1px solid var(--line);font-size:11px;color:var(--sub);font-weight:600;display:flex;gap:10px;align-items:center;background:var(--panel2)}
#auditDraw .ad-h b{font-size:11.5px;color:var(--ink)}
#auditDraw .ad-b{height:200px;overflow:auto;padding:8px 14px;font-family:var(--mono);font-size:11px;color:#5a6a85;line-height:1.95}
#auditDraw .ad-b div{white-space:pre-wrap;word-break:break-word}
#auditDraw .ad-b .ad-new{color:var(--blue)}
@media (max-width:1280px){#auditDraw{right:264px}}
@media (max-width:1080px){#auditDraw{left:190px}}
@media (max-width:880px){#auditDraw{display:none}}
/* 参考量列（单次服量折算，院内口径） */
.jf-t th em{font-style:normal;font-size:9px;color:#a7b2c2;font-weight:400;margin-left:2px}
.jf-rv{font-family:var(--mono);font-size:11px;color:#3d4c63;white-space:nowrap}
.jf-rv.r1{color:#8a6d1d}
.jf-rv.r2{color:#b4442f;font-weight:600}
.jf-rv.ru{color:#6b7fa8}
.jf-rn{color:#c2cad6}
.jf-rm{font-style:normal;font-size:9px;color:#b4442f;margin-left:3px;border:1px solid #f0cfc6;background:#fdf1ee;border-radius:3px;padding:0 3px;line-height:1.6}
.jf-rm.dim{color:#9aa6b6;border-color:var(--line);background:#f7f9fc}
.jf-refm{padding:7px 11px;font-size:10.5px;color:#6b7789;line-height:1.8;border-top:1px dashed var(--line);background:#fbfcfe}
.jf-refm i{font-style:normal;font-size:10px;color:#8b97a8;letter-spacing:.4px;margin-right:6px}
.jf-refm b{color:#3d4c63;font-weight:600}
.jf-rnote{margin-top:3px;padding-left:9px;border-left:2px solid var(--blue-b);color:#7d8899;font-size:10px}
.jf-rv b{font-size:12px;font-weight:700;color:#1f2f45}
.jf-rv i.jf-rg{font-style:normal;font-size:9.5px;color:#a7b2c2;margin-left:2px}
.jf-rv.r1 b{color:#8a6d1d}
.jf-rv.r2 b{color:#b4442f}
.jf-rv.ru b{color:#6b7fa8}
/* 条文层方（仅组成，无证候编码）标识 */
.jf-tag.lv{background:#eef2f9;border-color:#dbe3f0;color:#5b6b85}

/* ── 病名锚定卡（古方今译映射，bingjy_kb.js） ── */
.ba .ba-it { border-top: 1px dashed var(--line, #dfe6ef); padding: 8px 2px 6px; }
.ba .ba-it:first-of-type { border-top: 0; }
.ba .ba-hd { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.ba .ba-hd b { font-size: 12.5px; }
.ba .ba-ch { font-size: 10.5px; color: var(--sub, #8a97a8); }
.ba .ba-sym { font-size: 11.5px; color: var(--sub, #8a97a8); margin-top: 3px; }
.ba .ba-mod { font-size: 11.5px; margin-top: 4px; display: flex; gap: 5px; flex-wrap: wrap; align-items: center; }
.ba .ba-trap { font-size: 11.5px; }
.ba .ba-note { font-size: 11px; color: var(--sub, #8a97a8); margin-top: 4px; }

/* ── 方证格位卡（51 格对照，bingjy_kb.js marks） ── */
.gb .gb-layers { font-size: 10.5px; color: var(--sub, #8a97a8); margin-left: 8px; font-weight: 400; }
.gb .gb-kv { display: flex; align-items: baseline; gap: 8px; padding: 5px 0; border-top: 1px dashed var(--line, #dfe6ef); flex-wrap: wrap; }
.gb .gb-kv:first-of-type { border-top: 0; }
.gb .gb-kv i { font-style: normal; font-size: 10.5px; color: var(--sub, #8a97a8); flex: 0 0 30px; }
.gb .gb-kv b { font-size: 12px; }
.gb .gb-core { font-size: 11px; color: var(--sub, #8a97a8); }
.gb .gb-tags { margin-top: 6px; display: flex; gap: 6px; flex-wrap: wrap; }

/* ── 四诊三镜 · 可收可展（舌象 / 脉象 / 眼象，2026-11-05）──────────────
   已录默认收起、未录默认展开；表头一行带状态与成句摘要，点一下即开合。
   收起只影响观感，输入框仍在 DOM 里——回填、改判、自动定证都不受影响。 */
.tcm .q.foldable { padding: 0; overflow: hidden; }
.tcm .q.foldable > summary { list-style: none; cursor: pointer; user-select: none;
  display: flex; align-items: center; gap: 7px; flex-wrap: wrap;
  padding: 11px 15px; font-size: 10.5px; letter-spacing: 1.2px; color: var(--sub); font-weight: 600;
  transition: background .12s; }
.tcm .q.foldable > summary:hover { background: #fafcff; }
.tcm .q.foldable > summary::-webkit-details-marker { display: none; }
.tcm .q.foldable > summary b { font-size: 10.5px; letter-spacing: 1.2px; color: var(--sub); font-weight: 600; }
.tcm .q.foldable > summary .fcnt { margin-left: 0; }
.tcm .q.foldable > summary .fd-meta { flex: 1 1 auto; min-width: 0; font-size: 11px; letter-spacing: 0;
  font-weight: 400; color: #93a0b5; text-align: right; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tcm .q.foldable > summary::after { content: '▾'; font-size: 10px; color: #9aa7bb; margin-left: 8px; }
.tcm .q.foldable:not([open]) > summary::after { content: '▸'; }
.tcm .q.foldable[open] > summary { border-bottom: 1px solid var(--line); }
.tcm .q.foldable > .fb-body { padding: 11px 15px 13px; }

/* ── 漏斗轮次封顶（批次三十五）──────────────────────────────
   收敛框是绿的，封顶框用琥珀：它不是结论，是一条「问到这里为止」的边界。 */
.pb-lock.pb-cap{border-color:#e6cf9a;background:#fffbf0}
.pb-lock.pb-cap b{color:#8a5a10}
.pb-lock.pb-cap span{color:#7a6535}
.pb-lock.pb-cap .pb-lock-note{border-top-color:#eddfbd;color:#7a6535}
.pb-lock.pb-cap .btn{margin-top:9px}

/* ── 辨证结论条 · 置信度（2026-11-05 全自动链）──────────────────
   收敛走绿；未达锁定线按最高分落证走琥珀——不是错误，是「已落证但证据偏薄」。 */
.concbar.lowconf{border-color:#e8d3a4;border-left-color:#c9922f;background:linear-gradient(180deg,#fffdf8,#fdf7ea)}
.concbar.lowconf .cb-k{color:#a8761f}
.concbar.lowconf .cb-stamp{color:#8a5a10;background:#fdf3dd;border-color:#e8d3a4}
.cb-lowwarn{flex-basis:100%;margin-top:6px;padding:10px 14px;border:1px solid #e0b95e;border-left:4px solid #c9922f;
  border-radius:8px;background:#fff8e8;color:#5c430e;font-size:13px;line-height:1.55}
.cb-lowwarn b{color:#8a5a10}
.cb-conf{font-size:11px;color:var(--sub);background:#fff;border:1px solid var(--line);
  border-radius:20px;padding:3px 10px;white-space:nowrap}
.cb-conf.low{color:#8a5a10;background:#fdf7ea;border-color:#e8d3a4}
.tfig-wrap{margin:7px 0 4px;border:1px solid var(--line);border-radius:9px;background:#fbfcfd;padding:6px}
.tfig{width:100%;height:auto;display:block}
.tfig-bg{fill:#fbfcfd}
.tfig-sky{fill:#eff6fa}
.tfig-sun{fill:#f6dfa6}
.tfig-rays line{stroke:#e8c877;stroke-width:1.4;stroke-linecap:round}
.tfig-crown circle{fill:#cee0c5;stroke:#a9c197;stroke-width:1}
.tfig-trunk{fill:#9a8264}
.tfig-branch{fill:none;stroke:#9a8264;stroke-width:7;stroke-linecap:round}
.tfig-root{fill:none;stroke:#a8906c;stroke-width:2.4;stroke-linecap:round}
.tfig-soil{fill:#e7ddc9}
.tfig-ground{stroke:#bba98a;stroke-width:1.6}
.tfig-aqua{fill:#dcebf3}
.tfig-wave path{fill:none;stroke:#b8d3e1;stroke-width:1.2}
.tfig-ring{fill:none}
.tfig-ring.hit ellipse,.tfig-ring.hit circle{stroke:#b4442f;stroke-width:1.8;opacity:.9}
.tfig-ring.risk ellipse,.tfig-ring.risk circle{stroke:#b98a3c;stroke-width:1.4;stroke-dasharray:5 4;opacity:.75}
.tfig-lead{stroke:#c5cfd8;stroke-width:1;stroke-dasharray:2 3}
.tfig-dot{fill:#8ba1af}
.tfig-lb .p1{font-size:12px;font-weight:700;fill:#3d4f5c}
.tfig-lb .p2{font-size:9.5px;fill:#94a3ad;letter-spacing:.6px}
.tfig-tag{font-size:9.5px;font-weight:700}
.tfig-lb.hit .p1{fill:#a03a26}
.tfig-lb.hit .tfig-tag{fill:#b4442f}
.tfig-lb.hit .tfig-lead{stroke:#dcaea4}
.tfig-lb.risk .tfig-tag{fill:#a2762f}
.tfig-cap{font-size:10px;color:#7d8b96;margin:6px 2px 0;line-height:1.7}
.tfig-q{margin-top:12px}
.tfig-q>b{display:block;font-size:11.5px;color:#2b3b47;margin-bottom:4px;
  border-left:2px solid #cbd8e0;padding-left:6px}
.tfig-hint{font-size:10.5px;color:#7d8b96;margin:-1px 0 5px}
