.stl-selection { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(260px, 1fr); gap: 16px; margin-top: 18px; }
.stl-selection[hidden], #dropZone[hidden] { display: none !important; }
.stl-selection.dragging { outline: 2px dashed #287bf1; outline-offset: 4px; border-radius: 18px; }
.stl-preview-main { min-width: 0; overflow: hidden; border: 1px solid #c8ddec; border-radius: 18px; background: linear-gradient(145deg, #f9fcff, #e9f4fa); }
.stl-preview-main header { display: flex; align-items: center; gap: 10px; justify-content: space-between; padding: 16px; }
.stl-preview-main header > div { min-width: 0; }
.stl-preview-name { display: block; overflow-wrap: anywhere; font-size: 16px; color: #18365b; }
.stl-preview-meta, .stl-help { margin: 6px 0 0; font-size: 12px; color: #637c98; }
.stl-reset { flex-shrink: 0; }
.stl-viewport { height: 350px; position: relative; }
.stl-viewport canvas { display: block; width: 100%; height: 100%; }
.stl-preview-status { position: absolute; inset: 0; display: grid; place-content: center; padding: 24px; margin: 0; text-align: center; color: #647e99; pointer-events: none; }
.stl-preview-status[hidden] { display: none; }
.stl-help { text-align: center; padding: 10px 12px 14px; }
.stl-selection .pending-panel { margin: 0; min-width: 0; }
.stl-selection .pending-heading { flex-wrap: wrap; gap: 8px; }
.stl-selection .pending-heading h3 { font-size: 15px; }
.stl-selection .selected-files { max-height: 380px; }
.stl-selection .selected-file { flex-wrap: wrap; cursor: pointer; }
.stl-selection .file-copy { flex: 1; min-width: 100px; }
.stl-selection .file-copy strong { white-space: normal; overflow-wrap: anywhere; }
.stl-selection .selected-file.preview-active { border-color: #4585ed; background: #edf5ff; box-shadow: inset 3px 0 #367bef; }
.stl-selection .selected-file:focus-visible { outline: 2px solid #367bef; outline-offset: 2px; }
@media (max-width: 760px) {
  .stl-selection { grid-template-columns: minmax(0, 1fr); }
  .stl-viewport { height: 280px; }
  .stl-selection .selected-files { max-height: 280px; }
  .stl-preview-main header { padding: 12px; }
}
