/* motion-batch3 · 跟随 3D 的标注引线（候选样张）
   做法参考 reference.md §3.1 / §4.1-5（1px 线 + 6px 端点，从设备向信息牌展开），时长改为 360ms；不照搬代码、配色与命名。
   颜色只用语义令牌：线与端点 = --jmx-3d-select（与 3D 选中框同色；浅色为 brand-text，深色为 brand）。 */
.mb3-lead { position: absolute; inset: 0; pointer-events: none; overflow: visible; z-index: 1; }
.mb3-lead svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.mb3-lead .ln { fill: none; stroke: var(--jmx-3d-select); stroke-width: 1; shape-rendering: crispEdges; }
.mb3-lead .ln.occ { stroke-dasharray: 3 3; }
.mb3-lead .ea, .mb3-lead .eb { fill: var(--jmx-3d-select); stroke: var(--jmx-3d-select); stroke-width: 1; shape-rendering: crispEdges; }
.mb3-lead .ea.occ { fill: var(--jmx-viewer-bg); }
.mb3-card { position: absolute; z-index: 3; width: 232px; padding: 10px 12px 12px; border-radius: var(--jm-radius-md);
  background: var(--jm-bg-overlay); border: 1px solid var(--jm-border-strong); box-shadow: var(--jm-shadow-2);
  font-size: 12px; color: var(--jm-text-2); pointer-events: auto; will-change: opacity, transform; }
.mb3-card[hidden] { display: none; }
.mb3-card .hd { display: flex; align-items: center; gap: 8px; }
.mb3-card .cd { font-family: var(--jm-font-num); font-weight: 600; font-size: 14px; color: var(--jm-text-1); }
.mb3-card .nm { font-size: 13px; font-weight: 600; color: var(--jm-text-1); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.mb3-card .hd .st { margin-left: auto; flex: none; }
.mb3-card .ms { margin-top: 6px; line-height: 18px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
.mb3-card .kv { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 12px; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--jm-divider); }
.mb3-card .kv .k { color: var(--jm-text-3); } .mb3-card .kv .v { color: var(--jm-text-1); font-family: var(--jm-font-num); font-weight: 600; font-size: 13px; }
.mb3-card .bt { display: flex; gap: 6px; margin-top: 10px; }
.mb3-card .bt .btn { flex: 1; justify-content: center; }
.mb3-card .off { display: none; margin-top: 8px; padding: 6px 8px; border-radius: var(--jm-radius-sm); background: var(--jm-bg-sunken); color: var(--jm-text-2); align-items: center; gap: 8px; }
.mb3-card.away .off { display: flex; }
.mb3-card .off .btn { margin-left: auto; }
.mb3-card .x { position: absolute; top: 6px; right: 6px; }
/* 被信息牌盖住的普通标签暂时让开（已选工位的标签不受影响） */
.lab.mb3-under { visibility: hidden; }
/* 手机宽度：不画线、不出信息牌（详情在页面下方合并后的底部详情里） */
@media (max-width: 640px) { .mb3-lead, .mb3-card { display: none !important; } }
