/* motion-batch3 · 拆解视图：部件清单（桌面在右侧详情位，≤640 为底部抽屉）。只用语义令牌。 */
.mb3-ex { display: flex; flex-direction: column; min-height: 0; flex: 1; }
.mb3-ex .sec-head .side .btn { min-height: 32px; }
.mb3-sum { display: flex; align-items: center; gap: 10px; margin: 2px 0 12px; font-size: 12px; color: var(--jm-text-3); flex-wrap: wrap; }
.mb3-parts { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--jm-divider); }
.mb3-parts li { display: grid; grid-template-columns: 28px auto 1fr; align-items: center; gap: 4px 8px; min-height: 40px; padding: 6px 8px; border-bottom: 1px solid var(--jm-divider); cursor: pointer; border-radius: var(--jm-radius-sm); }
.mb3-parts li .i { font-size: 12px; color: var(--jm-text-3); }
.mb3-parts li .n { font-size: 13px; font-weight: 600; color: var(--jm-text-1); white-space: nowrap; }
.mb3-parts li .h { font-size: 12px; color: var(--jm-text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: right; }
.mb3-parts li:hover, .mb3-parts li.hov { background: var(--jm-bg-hover); }
.mb3-parts li.on { background: var(--jm-bg-hover); box-shadow: inset 2px 0 0 var(--jmx-3d-select); }
.mb3-parts li.on .i { color: var(--jm-text-1); }
.mb3-pd { margin-top: 12px; display: flex; flex-direction: column; gap: 10px; font-size: 13px; color: var(--jm-text-2); }
.mb3-pt { display: flex; align-items: baseline; gap: 8px; } .mb3-pt b { color: var(--jm-text-1); font-size: 14px; } .mb3-pt .i, .mb3-pt .h { font-size: 12px; color: var(--jm-text-3); }
.mb3-acts { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mb3-acts .btn { min-height: 32px; }
.mb3-wo { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; color: var(--jm-ok-fg); }
.mb3-ans { padding: 10px 12px; border-radius: var(--jm-radius-sm); background: var(--jm-bg-sunken); border: 1px solid var(--jm-border); line-height: 20px; display: flex; flex-direction: column; gap: 4px; }
.mb3-ans .q { font-size: 12px; color: var(--jm-text-3); } .mb3-ans p { margin: 0; color: var(--jm-text-1); }
.mb3-ans .src { font-size: 12px; color: var(--jm-text-3); display: inline-flex; align-items: center; gap: 4px; }
.mb3-ans .spin { display: inline-block; vertical-align: -2px; margin-right: 6px; }
.mb3-note, .mb3-empty { font-size: 12px; color: var(--jm-text-3); line-height: 18px; }
#mb3Ex.on { background: var(--jm-bg-hover); color: var(--jm-text-1); }
/* 拆解时：信息牌与引线让位，普通标签只留已选工位（部件清单是主要信息） */
html.mb3-exploding #labels .lab:not(.sel) { visibility: hidden; }
/* ≤640：底部抽屉（不遮挡底部标签栏；内嵌在工作台里时贴底） */
.mb3-drawer { position: fixed; left: 0; right: 0; bottom: calc(60px + var(--jm-safe-b, 0px)); z-index: 25; max-height: 42dvh; overflow: auto; overscroll-behavior: contain;
  background: var(--jm-bg-surface); border-top: 1px solid var(--jm-border); border-radius: var(--jm-radius-md) var(--jm-radius-md) 0 0; box-shadow: var(--jm-shadow-3); padding: 6px var(--jm-gutter, 16px) 16px; }
.mb3-drawer[hidden] { display: none; }
html.jm-embedded .mb3-drawer { bottom: 0; }
.mb3-drawer .grip { width: 36px; height: 4px; border-radius: 2px; background: var(--jm-border-strong); margin: 2px auto 8px; }
.mb3-drawer .mb3-parts li { min-height: 44px; }
.mb3-drawer .mb3-acts .btn, .mb3-drawer .sec-head .side .btn { min-height: 44px; }
@media (min-width: 641px) { .mb3-drawer { display: none !important; } }
.no3d .mb3-lead, .no3d .mb3-card { visibility: hidden; }
