/* decisionarchive.css — 「选股决策档案」view (2026-08-12)
 *
 * 视觉上唯一的硬要求 (规格 §3.1): **三个区必须一眼可分**, 尤其区二「结算归因标注」不能长得像
 * 区一「决策依据」—— 混起来展示就是用户担心的"表演式/发票式"。所以三个区左侧色条不同,
 * 区二额外带琥珀色底 + 显式徽标。
 * 全部选择器都在 .da-* 命名空间内, 不碰任何既有 view 的样式。
 */

#decision_archive-view .da-head {
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: var(--sp-2) var(--sp-3);
  margin-bottom: var(--sp-3);
  background: var(--card);
  font-size: var(--fs-meta);
  color: var(--text-2);
}

.da-zone {
  border: 1px solid var(--border);
  border-left: 4px solid var(--border-strong);
  border-radius: var(--r-lg);
  padding: var(--sp-3);
  margin-bottom: var(--sp-4);
  background: var(--card);
}
.da-zone--decision { border-left-color: var(--candy-sky); }
.da-zone--settle   { border-left-color: var(--candy-amber); background: var(--bg-1); }
.da-zone--cards    { border-left-color: var(--candy-purple); }

.da-zone-h {
  margin: 0 0 var(--sp-1);
  font-size: var(--fs-title);
  color: var(--text-0);
}
.da-zone-src { font-size: var(--fs-meta); color: var(--text-3); margin-bottom: var(--sp-2); }
.da-zone-caveat {
  font-size: var(--fs-meta);
  color: var(--text-1);
  background: var(--bg-2);
  border-radius: var(--r-md);
  padding: var(--sp-2);
  margin-bottom: var(--sp-2);
}
.da-zone-caveat p { margin: 0; }
.da-zone--settle .da-zone-caveat { background: var(--hl-yellow); color: var(--text-0); }

.da-kpis { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-bottom: var(--sp-2); }
.da-kpi {
  font-size: var(--fs-meta);
  color: var(--text-2);
  background: var(--tag-bg);
  border-radius: var(--r-pill);
  padding: 2px var(--sp-2);
}
.da-kpi b { color: var(--text-0); }
.da-kpi--keep b { color: var(--up, var(--text-0)); }
.da-kpi--kill b { color: var(--dn); }

.da-audit {
  font-size: var(--fs-meta);
  color: var(--text-2);
  margin-bottom: var(--sp-2);
  line-height: var(--lh-body);
}

.da-tier-h { margin: var(--sp-3) 0 var(--sp-1); font-weight: 600; color: var(--text-0); }
.da-tier-n { font-weight: 400; color: var(--text-3); font-size: var(--fs-meta); }

/* 宽表在自己的卡里横滚, 页面 body 永不横滚 */
#decision_archive-view .table-card { overflow-x: auto; }
/* 2026-08-31 修「表头遮住内容」(用户报告): 全站 `.table-card thead th { position: sticky;
   top: var(--tabs-h) }` (site.css) 是给持仓/选股那种**单张长表**设计的; 本页一个日期渲染
   ~15 张短表 (区〇 1 张 + 区〇b 每档 1 张 + 区一每档 1 张 + 区二/区三), 每张只有 2~7 行,
   与 dualpicks 2026-08-13 修掉的坑同款 (第 4 次, 见 site.css .dualpicks-side thead 注释):
   滚动时各表 thead 脱离钉到 38px 视口偏移, 数据行从它底下穿过被盖住 (如 rev10 首行被自己
   的浮层表头盖掉)。短表表头没有"滚出去可钉"的价值, scoped 关掉。 */
#decision_archive-view .table-card thead th { position: static; top: auto; z-index: auto; }
.da-table { width: 100%; border-collapse: collapse; font-size: var(--fs-meta); }
.da-table th, .da-table td {
  padding: var(--pad-cell-y) var(--pad-cell-x);
  border-bottom: 1px solid var(--border-soft);
  text-align: left;
  vertical-align: top;
}
.da-table th { color: var(--text-3); font-weight: 500; white-space: nowrap; }
.da-table tr:hover { background: var(--row-hover); }
.da-ev { color: var(--text-1); line-height: var(--lh-body); word-break: break-word; }
.da-ev--note { color: var(--text-2); }
.da-empty { color: var(--text-3); font-size: var(--fs-meta); }

.da-verdict { border-radius: var(--r-pill); padding: 1px var(--sp-2); font-size: var(--fs-micro); white-space: nowrap; }
.da-verdict--keep { background: var(--color-src-self-bg); color: var(--color-src-self-fg); }
.da-verdict--kill { background: var(--hl-orange); color: var(--text-0); }
.da-verdict--hold { background: var(--tag-bg); color: var(--text-2); }
/* 先给一条老浏览器也认的底色, color-mix 不支持时整条被丢弃、回落到上一行 */
.da-v-kill td { background: var(--bg-1); }
.da-v-kill td { background: color-mix(in srgb, var(--hl-orange) 18%, transparent); }

.da-stance { border-radius: var(--r-pill); padding: 1px var(--sp-2); font-size: var(--fs-micro); white-space: nowrap; background: var(--tag-bg); color: var(--text-2); }
.da-stance--agree { background: var(--color-src-self-bg); color: var(--color-src-self-fg); }
.da-stance--reject { background: var(--hl-orange); color: var(--text-0); }

.da-iid { font-family: var(--font-mono); font-size: var(--fs-micro); color: var(--text-2); background: var(--tag-bg); border-radius: var(--r-sm); padding: 0 4px; }

.da-rc { font-size: var(--fs-meta); font-family: var(--font-mono); white-space: normal; }
.da-rc--ok { color: var(--text-3); }
.da-rc--unresolved { color: var(--text-2); }
.da-rc--mismatch { color: var(--dn); font-weight: 600; }
.da-rc--none { color: var(--text-3); }

/* ---- 逐票卡 ---- */
.da-card {
  border: 1px solid var(--border);
  border-radius: var(--r-lg);
  padding: var(--sp-3);
  margin: var(--sp-3) 0;
  background: var(--bg);
}
.da-card-h { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); margin-bottom: var(--sp-2); }
.da-card-h .code { font-family: var(--font-mono); font-weight: 600; }
.da-card-name { font-weight: 600; color: var(--text-0); }
.da-tag { font-size: var(--fs-micro); background: var(--tag-bg); color: var(--text-2); border-radius: var(--r-pill); padding: 1px var(--sp-2); }
.da-tag--warn { background: var(--hl-yellow); color: var(--text-0); }

.da-slot { border-left: 3px solid var(--border-soft); padding-left: var(--sp-2); margin: var(--sp-2) 0; }
.da-slot--decision { border-left-color: var(--candy-sky); }
.da-slot--settle { border-left-color: var(--candy-amber); }
.da-slot--verifier { border-left-color: var(--candy-pink); }
.da-slot--prose { border-left-color: var(--candy-mint); }
.da-slot--tools { border-left-color: var(--candy-stone); }
.da-slot-h { font-size: var(--fs-meta); color: var(--text-3); margin-bottom: 2px; }
.da-slot-b { font-size: var(--fs-body); color: var(--text-1); }
.da-driver { font-size: var(--fs-micro); color: var(--text-2); }

/* 正文 = 全展开不折叠不截断 (用户拍板 5): 这里**不设** max-height / overflow / -webkit-line-clamp。 */
.da-prose { line-height: var(--lh-body); }
.da-prose h2, .da-prose h3 { font-size: var(--fs-ui); margin: var(--sp-2) 0 var(--sp-1); color: var(--text-0); }
.da-prose p { margin: var(--sp-1) 0; }
.da-prose blockquote { margin: var(--sp-1) 0; padding-left: var(--sp-2); border-left: 2px solid var(--border-soft); color: var(--text-2); }
.da-prose table { width: 100%; border-collapse: collapse; font-size: var(--fs-meta); }
.da-prose .md-table-wrap { overflow-x: auto; }

.da-tools-btn {
  font-size: var(--fs-meta);
  border: 1px solid var(--border);
  background: var(--bg-1);
  color: var(--text-1);
  border-radius: var(--r-md);
  padding: var(--sp-1) var(--sp-2);
  cursor: pointer;
}
.da-tools-btn:hover { background: var(--row-hover); }
.da-tools-btn[disabled] { opacity: 0.6; cursor: default; }
.da-call { border-top: 1px solid var(--border-soft); padding: var(--sp-2) 0; }
.da-call-h { font-size: var(--fs-meta); color: var(--text-1); }
.da-call-meta { color: var(--text-3); font-size: var(--fs-micro); margin-left: var(--sp-2); }
.da-call-args { font-family: var(--font-mono); font-size: var(--fs-meta); color: var(--text-3); word-break: break-all; }
/* 工具返回原文一字不少: 只允许**横向**滚动 (长行), 纵向不设上限。 */
.da-call-result {
  font-family: var(--font-mono);
  /* tokens.css: --fs-micro 明确「禁用于可读文本」, 工具返回是正文, 故用 --fs-meta */
  font-size: var(--fs-meta);
  line-height: var(--lh-snug);
  white-space: pre-wrap;
  word-break: break-word;
  overflow-x: auto;
  background: var(--bg-1);
  border-radius: var(--r-md);
  padding: var(--sp-2);
  margin: var(--sp-1) 0 0;
}

@media (max-width: 640px) {
  .da-zone { padding: var(--sp-2); }
  .da-card { padding: var(--sp-2); }
  /* ⛔ 手机上**不**把表格字号降到 --fs-micro (tokens.css: 该档禁用于可读文本) —— 表格里是证据
     原文不是角标。窄屏靠 .table-card 的 overflow-x 横滚解决, 不靠缩字。 */
}

/* run 身份不一致 (F7, 2026-08-12): 与普通 .da-audit 区分开, 它说的是"这一页可能拼错了" */
.da-audit--bad { border-left: 3px solid var(--hl-orange); background: var(--bg-1); padding-left: 8px; }

/* 2026-08-12 补: 两轮名单 / 辩论裁决 / 引用的记忆 三个新区 */
.da-zone--runs   { border-left-color: var(--hl-blue, var(--accent)); }
.da-zone--debate { border-left-color: var(--hl-purple, var(--accent)); }
.da-zone--memory { border-left-color: var(--candy-stone, var(--border)); }
.da-c-in    { color: var(--up, var(--text-0)); }
.da-c-out   { color: var(--text-3); }
.da-c-final { font-weight: 600; }
.da-tag--daily { background: var(--bg-2); color: var(--text-1); }
.da-tag--incr  { background: var(--bg-2); color: var(--text-1); }
.da-tag--final { background: var(--hl-green, var(--bg-2)); color: var(--text-0); }
.da-card--dailyonly { border-style: dashed; }
.da-mini { color: var(--text-3); font-size: var(--fs-meta); }
.da-mem { padding: 4px 0; border-top: 1px dashed var(--border); }
.da-mem:first-child { border-top: 0; }
.da-ins--decision td { background: var(--hit-dual-bg, var(--bg-1)); }
.da-slot--debate .da-slot-h { font-weight: 600; }
.da-kpi--warn { color: var(--hl-orange, var(--text-1)); }
.da-kpi--none { color: var(--text-3); }
