.machine-image-modal { max-height: calc(100vh - 32px); overflow-y: auto; }
.machine-image-modal-body > * { min-width: 0; }
#machineImageGallery { display: grid; grid-template-columns: repeat(auto-fit,minmax(88px,1fr)); gap: 8px; max-height: 310px; overflow-y: auto; padding: 3px; }
.machine-gallery-card { min-width: 0; border: 1px solid var(--border-color,#d9e2ee); border-radius: 8px; padding: 5px; text-align: center; cursor: grab; }
.machine-gallery-card > button { width: 100%; padding: 2px; border: 2px solid transparent; background: transparent; border-radius: 5px; cursor: pointer; }
.machine-gallery-card > button[aria-pressed="true"], .machine-gallery-card.is-drop-target { border-color: var(--primary-color,#2679df); }
.machine-gallery-card img { width: 100%; height: 72px; object-fit: contain; display: block; }
.machine-gallery-card > span { display: block; font-size: 11px; margin: 4px 0; }
.machine-gallery-order { display: flex; justify-content: center; gap: 8px; }
.machine-gallery-order button { min-width: 30px; min-height: 30px; border: 1px solid #c3cedc; border-radius: 4px; background: transparent; color: inherit; cursor: pointer; }
.machine-image-modal button:disabled { opacity: .45; cursor: default; }
.machine-image-modal button:focus-visible { outline: 2px solid #2679df; outline-offset: 2px; }
#machineImageGalleryLimit { font-weight: 600; margin-top: 0; }
.machine-image-native-select:has(+ input:disabled) { opacity: .5; cursor: default; }
@media(max-width:600px) { .machine-image-modal-body { display: flex; flex-direction: column; } #machineImageGallery { grid-template-columns: repeat(4,minmax(0,1fr)); } .machine-gallery-card img { height: 54px; } }
