/* ── Tour Preview ── */
.preview-overlay {
  display: none; position: fixed; inset: 0; z-index: 150;
  background: #000; flex-direction: column;
}
.preview-overlay.show { display: flex; }
#previewViewer { position: absolute; inset: 0; }
.preview-topbar {
  position: absolute; top: 0; left: 0; right: 0; z-index: 10;
  background: linear-gradient(to bottom, rgba(0,0,0,.75), transparent);
  padding: 16px 18px; display: flex; align-items: center; justify-content: space-between;
  pointer-events: none;
}
.preview-scene-label {
  color: white; font-size: 16px; font-weight: 700; text-shadow: 0 2px 6px rgba(0,0,0,.6);
}
.preview-close-btn {
  pointer-events: auto;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2);
  color: white; padding: 8px 16px; border-radius: 22px;
  font-size: 14px; font-weight: 700; cursor: pointer;
  backdrop-filter: blur(8px); -webkit-tap-highlight-color: transparent; transition: all .18s;
}
.preview-close-btn:hover { background: rgba(255,255,255,.18); }
.preview-strip {
  position: absolute; bottom: 0; left: 0; right: 0; z-index: 10;
  background: linear-gradient(to top, rgba(0,0,0,.85), transparent);
  display: flex; gap: 9px; padding: 32px 14px 16px;
  overflow-x: auto; scrollbar-width: none;
}
.preview-strip::-webkit-scrollbar { display: none; }
.preview-thumb {
  flex-shrink: 0; cursor: pointer; border-radius: 9px; overflow: hidden;
  width: 68px; border: 2px solid transparent; transition: all .18s;
  -webkit-tap-highlight-color: transparent; box-shadow: 0 2px 8px rgba(0,0,0,.5);
}
.preview-thumb.active {
  border-color: var(--indigo-lt);
  box-shadow: 0 0 0 1px var(--indigo-lt), 0 2px 8px rgba(0,0,0,.5);
}
.preview-thumb img { width: 100%; height: 46px; object-fit: cover; display: block; }
.preview-thumb span {
  display: block; background: rgba(0,0,0,.6); color: white;
  font-size: 9px; font-weight: 600; padding: 3px 4px; text-align: center;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
