/* Loaded after the shared refinement so gallery controls keep their shape. */
main#app .listing-gallery.is-enhanced {
  display:block;min-width:0;max-width:100%;overflow:visible;border-radius:0;
}
.listing-gallery-stage {
  position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:16px;background:var(--bg);
}
.listing-gallery-panel { width:100%;height:100%; }
.listing-gallery-panel[hidden],.listing-gallery-panel [hidden] { display:none!important; }
main#app .listing-gallery-stage :is(img,video) {
  display:block;width:100%;height:100%;max-width:none;max-height:none;
  margin:0;object-fit:contain;border-radius:0;background:var(--bg);aspect-ratio:auto;
}
.listing-gallery-unavailable {
  display:flex;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:12px;
  padding:20px;color:var(--muted);font-size:14px;line-height:22px;text-align:center;
}
main#app .listing-gallery .listing-gallery-unavailable button {
  display:inline-flex;align-items:center;justify-content:center;
  min-height:var(--control-height,36px);padding:var(--control-padding-y,7px) 14px;border:1px solid var(--green);border-radius:999px;
  background:var(--card);color:var(--green);font-size:12px;font-weight:700;line-height:20px;text-align:center;
}
.listing-gallery-thumbnails {
  display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;overflow-y:hidden;
  margin:12px 0 0;padding:4px 3px 8px;scroll-padding-inline:3px;
  overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;
}
main#app .listing-gallery .listing-gallery-thumbnails button.listing-gallery-thumbnail {
  position:relative;flex:0 0 72px;width:72px;height:64px;min-height:64px;
  display:grid;place-items:center;padding:3px;overflow:hidden;border:2px solid var(--line);border-radius:12px;
  background:var(--bg);color:var(--ink);
}
main#app .listing-gallery .listing-gallery-thumbnails button.listing-gallery-thumbnail[aria-selected="true"] {
  border-color:var(--green);background:var(--soft);
}
main#app .listing-gallery-thumbnail img {
  display:block;width:100%;height:100%;max-height:none;object-fit:cover;
  border-radius:7px;margin:0;aspect-ratio:auto;
}
.listing-gallery-thumbnail img[hidden] { display:none!important; }
.listing-gallery-thumbnail-number {
  position:absolute;right:5px;bottom:5px;border-radius:4px;padding:1px 4px;
  background:#ffffffed;color:var(--ink);font-size:10px;line-height:15px;font-weight:600;
}
.listing-gallery-video-preview {
  display:grid;place-items:center;width:100%;height:100%;font-size:20px;
}
main#app .listing-gallery-thumbnail:focus-visible {
  outline:2px solid var(--green);outline-offset:2px;
}
main#app .listing-gallery .listing-gallery-thumbnails button.listing-gallery-thumbnail:hover {
  border-color:var(--green);
}
@media(max-width:760px) {
  .listing-gallery-stage { border-radius:12px; }
  .listing-gallery-thumbnails { gap:8px;margin-top:10px; }
  main#app .listing-gallery .listing-gallery-thumbnails button.listing-gallery-thumbnail { flex-basis:64px;width:64px;height:58px;min-height:58px; }
}
