/* Display tools: named groups, aligned values, and visible selection states. */
.motor-portable-main .visual-panel{container:viewer / inline-size}
.motor-portable-main .viewer-modes{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;background:#112630}
.viewer-control-caption{font-size:11px!important;font-weight:600;line-height:1.4;color:#9eb8c5}
.viewer-control-group{display:flex;flex-direction:column;gap:6px;min-width:0}
.viewer-modes .viewer-control-group{flex-direction:row;align-items:center;gap:14px}
.viewer-mode-segments{display:flex;padding:3px;border:1px solid #395462;border-radius:9px;background:#0b202a}
.viewer-mode-segments button{min-width:88px;border:0;background:transparent;color:#b5cbd5;border-radius:6px}
.viewer-mode-segments button[aria-pressed=true]{background:#2b6556;color:#dbfff1;box-shadow:0 1px 4px #0004}
.viewer-toggle{display:inline-flex!important;align-items:center;gap:8px!important;cursor:pointer;font-size:12px!important;line-height:1.5;white-space:normal}
.viewer-toggle input[type=checkbox]{width:17px!important;height:17px!important;min-height:17px!important;accent-color:#79dfbd;flex:none;margin:0}
.motor-portable-main .viewer-controls{display:grid;grid-template-columns:auto minmax(150px,1fr) minmax(220px,1.3fr) auto;gap:12px 20px;align-items:end;padding:12px 16px;background:#10232e}
.motor-portable-main .viewer-controls .viewer-control-group{margin:0;align-items:stretch}
.motor-portable-main .viewer-controls select{width:100%;min-width:0}
.viewer-control-row{display:flex;align-items:center;gap:7px}
.viewer-control-row .contour-scale-input{flex:1;min-width:0}
.motor-portable-main .contour-scale-input{display:flex;gap:0;border:1px solid #446072;border-radius:6px;background:#091e29;overflow:hidden}
.motor-portable-main .contour-scale-input input{flex:1;width:100%;border:0;background:transparent}
.contour-scale-input>span{padding-right:10px;color:#91b1bf;font-size:12px}
.viewer-camera-group .zoom-controls{margin:0;gap:5px}
.viewer-camera-group #reset-view{margin-left:5px;white-space:normal}
.motor-portable-main #field-color-help{grid-column:1/-1;margin:0;font-size:11px}
.motor-portable-main .viewer-slice-panel{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:16px;padding:12px 16px;background:#142b36}
.viewer-slice-heading{display:grid;gap:5px}
.viewer-control-note{font-size:10px!important;font-weight:400;line-height:1.5;color:#8fa9b6}
.viewer-slice-fields{min-width:0;margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(4,minmax(80px,1fr)) minmax(145px,1.3fr);align-items:end;gap:10px}
.viewer-slice-fields:disabled{opacity:.45}
.viewer-slice-fields .viewer-input-field{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:0}
.motor-portable-main .viewer-input-field select{width:100%;min-width:0}
.viewer-unit-input{display:flex;align-items:center;border:1px solid #395465;background:#091822;border-radius:6px;min-width:0;overflow:hidden}
.motor-portable-main .viewer-unit-input input{width:100%;min-width:0;border:0;background:transparent;padding-right:2px}
.viewer-unit{padding:0 8px 0 4px;font-size:11px;color:#8eafbe}
.viewer-slice-actions{display:grid;gap:5px}
.viewer-slice-actions button{font-size:11px!important;white-space:normal;padding:5px 8px!important;min-height:28px!important}
.motor-portable-main .three-d-parts{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#10232e}
.viewer-parts-heading{display:flex;align-items:center;gap:8px}
.viewer-parts-count{font-size:10px;color:#88a7b6;font-variant-numeric:tabular-nums}
.viewer-part-chips{display:flex;flex-wrap:wrap;gap:7px;flex:1;min-width:0}
.three-d-parts .viewer-part-chip{font-size:12px;gap:6px;border:1px solid #3b505c;border-radius:7px;padding:6px 10px;color:#91a6b2;background:#142731;cursor:pointer}
.viewer-part-chip:has(input:checked){border-color:#4c7f72;background:#1c3b39;color:#d6f1e5}
.viewer-part-chip:before{content:'';width:7px;height:7px;border-radius:2px;background:var(--part-color);flex:none}
.viewer-part-chip[data-part="1"]{--part-color:#9cbcc9}.viewer-part-chip[data-part="2"]{--part-color:#66899d}.viewer-part-chip[data-part="3"]{--part-color:#ee927f}.viewer-part-chip[data-part="4"]{--part-color:#d4a36b}
.motor-portable-main .viewer-part-chip input{width:14px;height:14px;min-height:14px}
.motor-portable-main .viewer-show-all{margin-left:auto;background:transparent;border:0;font-size:11px;color:#96d8c6;min-height:30px;padding:4px 6px}
.viewer-show-all:disabled{opacity:.35;cursor:default}
.motor-portable-main .viewer-mesh-panel{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;font-size:12px;padding:9px 16px;background:#112a34}
.motor-portable-main .viewer-mesh-panel .three-d-mesh-status{border:0;margin:0;padding:0;flex:1 1 220px;font-size:11px}
.motor-portable-main .viewer-mesh-panel label{margin:0}
.motor-portable-main .viewer-mesh-panel label:has(input:disabled),.motor-portable-main .viewer-mesh-panel label:has(select:disabled){opacity:.5}
.motor-portable-main .viewer-mode-group .viewer-mode-segments{padding:2px}
.motor-portable-main .viewer-mode-group button{min-width:70px;min-height:32px;padding:6px 10px}

@container viewer (max-width:1100px){.motor-portable-main .viewer-controls{grid-template-columns:1fr 1.25fr}.motor-portable-main .viewer-slice-panel{grid-template-columns:1fr;gap:10px}.viewer-slice-heading{display:flex;align-items:center;gap:12px}}
@container viewer (max-width:560px){.viewer-modes .viewer-control-group{gap:7px;align-items:flex-start;flex-direction:column}.motor-portable-main .viewer-controls{grid-template-columns:1fr;gap:10px}.viewer-control-group{gap:4px}.viewer-slice-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-slice-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.viewer-slice-heading{flex-wrap:wrap}.viewer-parts-heading{flex-basis:100%}.viewer-part-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-camera-group{flex-direction:column;align-items:stretch}.viewer-camera-group .zoom-controls{flex-basis:auto;justify-content:space-between}.viewer-mode-segments button{min-width:76px}.viewer-control-caption{font-size:11px!important}}
