/* 业务闭环相关的共享组件：记录详情、批次摘要、向导、范围框、标签组、权限提示、对话等 */
.sec{font-size:12px;color:var(--pine);margin:18px 0 8px;padding-left:8px;border-left:3px solid var(--pine);font-weight:600}
.rec-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rec-head b{font-size:16px}
.paras{border:1px solid var(--line2);border-radius:8px;background:#fbfcf8;padding:8px 12px;font-size:13px;line-height:1.8}
.paras>div{display:flex;gap:8px}.paras>div span{color:var(--faint);font-size:11px;min-width:24px;padding-top:2px}
.paras.mini{margin-bottom:10px;font-size:12px}.paras.mini>.tiny{display:block}
.tbl.mini{min-width:0;font-size:12px}.tbl.mini td,.tbl.mini th{padding:8px 10px;height:auto}
.batch-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.batch-sum>div{background:var(--inner);border:1px solid var(--line2);border-radius:8px;padding:10px 12px}
.batch-sum span{display:block;font-size:11px;color:var(--mute)}.batch-sum b{font-size:14px}
.iss-line{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--line2);font-size:12px;flex-wrap:wrap}
.chips{display:flex;flex-wrap:wrap;gap:4px}.chips span{font-size:11px;padding:1px 8px;border-radius:10px;background:var(--inner);border:1px solid var(--line2);white-space:nowrap}
.chips span.fol{background:#FFF8EA;border-color:#EBD7AA;color:#7A5513}
.cnt b{font-weight:600}.cnt span{margin-right:12px;white-space:nowrap}
.prog{display:flex;align-items:center;gap:8px;min-width:160px}.prog .bar{flex:1}
.steps-run{list-style:none;margin:6px 0 4px;padding:0}.steps-run li{padding:8px 0 8px 30px;position:relative;color:var(--mute)}
.steps-run li::before{content:'';position:absolute;left:6px;top:12px;width:12px;height:12px;border-radius:50%;border:2px solid var(--line)}
.steps-run li.run{color:var(--ink)}.steps-run li.run::before{border-color:var(--pine);border-top-color:transparent;animation:spin .8s linear infinite}
.steps-run li.done{color:var(--ink)}.steps-run li.done::before{background:var(--pine);border-color:var(--pine)}
@keyframes spin{to{transform:rotate(360deg)}}
.wiz{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap}.wiz span{flex:1;min-width:90px;text-align:center;font-size:11px;padding:6px 4px;border-radius:6px;background:var(--inner);color:var(--mute)}.wiz span.on{background:var(--pine-l);color:var(--pine);font-weight:600}
.chk-line{display:flex;gap:12px;font-size:12px;padding:6px 0;border-bottom:1px dashed var(--line2)}.chk-line b{min-width:110px}.chk-line.ok b{color:var(--pine)}.chk-line.bad b{color:var(--cin)}
.scope-box,.pvbox{background:var(--inner);border:1px solid var(--line2);border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.8;margin-top:4px}
.ver .row{gap:12px}
.views{margin-bottom:14px}.views .seg em,.seg a em{font-style:normal;opacity:.65;margin-left:2px}
.mv{border:0;background:none;color:var(--mute);cursor:pointer;padding:0 4px;font-size:11px}.mv:hover{color:var(--pine)}
.sw{position:relative;width:34px;height:20px;border-radius:10px;background:var(--line);border:0;cursor:pointer;vertical-align:middle}
.sw::after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}
.sw.on{background:var(--pine)}.sw.on::after{left:16px}
.denied{text-align:center;padding:48px 24px;max-width:620px;margin:40px auto}.denied h2{font-size:18px;margin:12px 0 8px}.denied p{color:var(--mute);font-size:13px;margin:0 0 20px}
.denied-ic svg{width:40px;height:40px;color:var(--ochre)}
.report h1{font-size:18px}.report h2{font-size:14px;margin:18px 0 8px}.report table{width:100%;border-collapse:collapse;font-size:12px}.report td,.report th{border:1px solid var(--line2);padding:6px 8px;text-align:left;vertical-align:top}.report th{background:var(--inner)}.report .muted{font-size:12px}
.docs a{font-size:12px;padding:3px 8px;border:1px solid #C5DDD7;border-radius:4px;background:var(--pine-ll)}
.fol{font-size:13px;line-height:1.8}.fol b{color:var(--pine);display:block;margin-top:8px}
.node.cur{border-color:var(--pine);box-shadow:0 0 0 2px var(--pine-l)}
.kv dd{min-width:0;word-break:break-word}
/* 结果卡片：决定、依据版本 */
.rc .ev a .evs{color:var(--mute);margin-left:6px}
.rc .rf .dec{font-size:12px}
.rc .useful{display:inline-flex;gap:4px;margin-left:4px}.rc .useful button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:1px 9px;font-size:11px;cursor:pointer;color:var(--ink2)}.rc .useful button.on{background:var(--pine-l);border-color:#C5DDD7;color:var(--pine)}.rc .useful button.on.no{background:var(--cin-l);border-color:#EFC9C2;color:var(--cin)}
.rc.hl{outline:2px solid #c7a957;outline-offset:3px}
.rc .rid{font-size:10px;color:var(--faint);font-weight:400}
.trace-mini{font-size:11px;color:var(--mute);display:flex;gap:10px;flex-wrap:wrap;margin:-2px 0 10px}.trace-mini a{font-size:11px}
@media(max-width:600px){.batch-sum{grid-template-columns:1fr 1fr}}
/* 临床：悬浮在工作站 / 门户之上的浮窗（覆盖 redesign.css 中对 .as 的阴影与窄屏规则） */
body[data-page^='cl-'] .ws.float .as{box-shadow:0 18px 60px rgba(21,48,45,.32),0 0 0 1px rgba(21,48,45,.12);flex:none}
@media(max-width:900px){body[data-page^='cl-'] .ws.float .host{display:flex}body[data-page^='cl-'] .ws.float .as{width:min(560px,calc(100vw - 16px))}}
body[data-page^='cl-'] .ws.float .ah{padding:12px 16px 0}
body[data-page^='cl-'] .ws.float .cbody{padding:14px 16px 24px}
body[data-page='cl-chat'] .ws.float .cbody{padding:0}
.ws.float .chat-history{position:absolute;inset:0 auto 0 0;width:250px;z-index:40;transform:translateX(-100%);visibility:hidden;transition:transform .15s;box-shadow:8px 0 30px rgba(21,48,45,.15)}
.ws.float .chat-workspace.history-open .chat-history{transform:none;visibility:visible}
.ws.float .chat-workspace.history-open .chat-history-scrim{display:block;position:absolute;inset:0;border:0;background:#233e3150;z-index:39}
.ws.float .history-toggle{display:inline-flex}.ws.float .chat-history-close{display:block}
.ws.float .conversation-toolbar{flex-wrap:wrap;padding:8px 12px;gap:6px}.ws.float .conversation-toolbar>.btn{height:26px;padding:0 8px}
.ws.float .chat-messages{padding:16px 14px}.ws.float .chat-composer{padding:10px 12px}.ws.float .empty-prompts{grid-template-columns:1fr}
.ctx-warn{background:var(--ochre-l);color:#7A5513;font-size:12px;padding:8px 22px;border-bottom:1px solid #EBD7AA}.ctx-warn a{margin-left:8px;font-weight:600}
.pickp{display:block;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px;margin-bottom:8px;cursor:pointer;font-size:13px}.pickp:hover{border-color:var(--pine)}.pickp.on{border-color:var(--pine);background:var(--pine-ll)}.pickp span{display:block;font-size:11px;color:var(--mute);margin-top:2px}
.chat-message .rc .ev a{display:block}
.history-pick b{font-size:12px}.history-pick small{font-size:10px}
.chat-shortcuts button{font-size:11px}
.ws.float .as{height:min(880px,calc(100vh - 56px))!important;top:46px}
body[data-page^='cl-'] .ws.float .ah{padding:10px 14px 0}
.ws.float .ah .t .tag,.ws.float .ah .t .who{display:none}
.ws.float .ah .t b{font-size:15px}
body[data-page^='cl-'] .ws.float .ah .pt{padding:6px 10px;margin-top:8px;gap:8px;font-size:11px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
.ws.float .ah .pt>span:first-child{display:none}
body[data-page^='cl-'] .ws.float .ah nav{margin-top:4px}
body[data-page^='cl-'] .ws.float .ah nav a{padding:8px 12px}
.ws.float .chat-shortcuts{margin-bottom:6px}.ws.float .composer-box textarea{min-height:36px}.ws.float .composer-hint{display:none}
.ws.float .conversation-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 运行记录（智能中心） */
pre.io{font:11.5px/1.6 ui-monospace,Menlo,monospace;background:var(--inner);border:1px solid var(--line2);border-radius:6px;padding:8px 10px;white-space:pre-wrap;word-break:break-all;margin:4px 0 10px;max-height:260px;overflow:auto}
details.nodelog{border:1px solid var(--line2);border-radius:8px;padding:8px 12px;margin-bottom:8px;background:#fff}details.nodelog.bad{border-color:#EFC9C2;background:#fdf8f6}details.nodelog summary{cursor:pointer;font-size:13px}
h4.sec{font-size:13px;margin:18px 0 10px}
.verbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;background:var(--inner);border-radius:8px;padding:8px 12px;margin-bottom:14px}
