/* Bộ máy: dùng cùng giấy, nét viền, nút và sprite với tab Linh kiện. */
.pc-parts-nav { flex-wrap:nowrap; justify-content:flex-start; overflow-x:auto; padding:2px 1px 8px; overscroll-behavior-x:contain; }
.pc-parts-nav .chip-btn { flex:0 0 auto; min-height:44px; }
.pc-model-intro h3 { margin:6px 0; font-size:18px; }
.pc-model-intro p { margin:0 0 10px; font-size:13px; line-height:1.5; }
.pc-model-scope .chip-btn { min-height:44px; }
.pc-model-fields { display:grid; gap:10px; margin:10px 0 12px; }
.pc-model-fields label { display:grid; gap:5px; font-size:13px; font-weight:700; }
.pc-model-fields select { width:100%; min-width:0; min-height:44px; border:2px solid var(--line); border-radius:10px; background:var(--card); color:var(--ink); padding:8px; font:600 16px var(--font); }
.pc-model-quote { background:var(--card); border:2px solid var(--ink); border-radius:14px; padding:12px; box-shadow:var(--shadow-sm); }
.pc-model-target { display:flex; gap:12px; align-items:center; }
.pc-model-target img { width:38px; height:72px; object-fit:contain; image-rendering:pixelated; flex:0 0 auto; }
.pc-model-target > div { display:grid; gap:3px; min-width:0; }
.pc-model-target small { font-size:12px; line-height:1.5; }
.pc-model-count { font-size:13px; line-height:1.5; margin:10px 0; }
.pc-model-costs { margin:10px 0; display:grid; gap:6px; font-size:13px; }
.pc-model-costs > div { display:flex; align-items:baseline; gap:8px; justify-content:space-between; }
.pc-model-costs dt { flex:1; min-width:0; }
.pc-model-costs dd { margin:0; font-weight:800; white-space:nowrap; font-variant-numeric:tabular-nums; }
.pc-model-costs .pc-model-total { border-top:2px solid var(--line); margin-top:3px; padding-top:8px; font-size:16px; }
.pc-model-next { width:100%; min-height:48px; margin-top:5px; white-space:normal; }
.pc-model-note { display:block; font-size:12px; line-height:1.5; color:var(--ink-2); margin:10px 0 0; }
.pc-model-confirm { width:min(520px,calc(100vw - 24px)); }
.pc-model-confirm h2 { font-size:18px; }
.pc-model-content { overflow:auto; max-height:55dvh; overscroll-behavior:contain; padding:0 2px; font-size:14px; line-height:1.5; }
.pc-model-content > p { margin:8px 0; }
.pc-model-content summary { cursor:pointer; min-height:44px; padding:10px 0; font-size:13px; font-weight:700; }
.pc-model-row { border-top:1px solid var(--line); padding:10px 0; font-size:13px; }
.pc-model-row > b { display:flex; gap:8px; flex-wrap:wrap; justify-content:space-between; }
.pc-model-row > small { display:block; line-height:1.5; margin-top:5px; }
.pc-model-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.pc-model-actions .btn { flex:1 1 110px; min-height:48px; white-space:normal; }
