/* ZD 主题 · primitives（布局层）
 *
 * 口径（2026-11-11 修正）：**组件一律用统一 UI `ui-kit`（uk-*）**，本文件只管布局与
 * 少量排版工具类，不得再定义卡片/按钮/徽标/表格/输入框等视觉组件——
 * 否则又变成"两套 UI"（历史上正是这么错的：自建 zd-card/zd-btn，与 ui-kit 只重合 6/108 个类）。
 *
 * 变量来源：优先消费 ui-kit 的 `--uk-*` 语义层；主题换肤覆写 `--uk-accent` 等即可。
 */

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--uk-bg, #f5f6f8);
  color:var(--uk-text, #1a1a1a);
  font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--uk-accent, #07c160);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:.2px}
h1{font-size:20px}
h2{font-size:17px}
h3{font-size:15px}
small{color:var(--uk-muted, #6b7280);font-size:12px}

/* ---------------- 布局工具 ---------------- */
.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.row.tight{gap:6px}
.row.between{justify-content:space-between}
.col{display:flex;flex-direction:column;gap:6px}
.grid{display:grid;gap:12px}
.grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){
  .grid.c3,.grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .grid.c2,.grid.c3,.grid.c4{grid-template-columns:minmax(0,1fr)}
}

/* 视图切换：JS 只切 .on */
.pane{display:none}
.pane.on{display:flex;flex-direction:column;gap:14px}

/* ---------------- 排版工具 ---------------- */
.muted{color:var(--uk-muted, #6b7280);font-size:12px}
.num{font-variant-numeric:tabular-nums;color:var(--uk-muted, #6b7280);font-size:12px;white-space:nowrap}
.hint{font-size:12px;color:var(--uk-muted, #6b7280);line-height:1.7}
.empty{padding:28px 12px;text-align:center;color:var(--uk-muted, #6b7280);font-size:13px}
.code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  background:var(--uk-bg-soft, #f1f2f4);padding:1px 5px;border-radius:4px;font-size:12px;
}
.tblwrap{overflow:auto;max-height:60vh;border-radius:10px}

/* 统计块数值（视觉组件由 uk-kpi 提供，这里只放大数字） */
.kpi .v{font-size:22px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums}
.kpi .k{font-size:12px;color:var(--uk-muted, #6b7280);margin-top:2px}
