/* Stable photo-world canvases; the supplied HTML remains the no-script /
   unsupported-canvas / failed-image fallback. Surrounding catalogs are accessible. */
.vox-globe{position:relative;width:100%;aspect-ratio:1.04;isolation:isolate;contain:layout paint;min-width:0;direction:ltr}
.vox-globe>canvas{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:opacity .45s ease;pointer-events:none}
.vox-globe.is-ready>canvas{opacity:1;pointer-events:auto;cursor:grab}
.vox-globe.is-dragging>canvas{cursor:grabbing}
.vox-globe>.globe-fallback{position:absolute;inset:6%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:5px;overflow:hidden;border-radius:50%;transition:opacity .35s ease}
.vox-globe>.globe-fallback>img{width:100%;height:100%;min-height:0;object-fit:cover}
.vox-globe.is-ready>.globe-fallback{opacity:0;visibility:hidden;pointer-events:none}
.vox-globe>.globe-items{display:none}
.vox-globe[data-globe=artists]{aspect-ratio:1.05}
@media(max-width:600px){.vox-globe{aspect-ratio:1}.vox-globe[data-globe=artists]{aspect-ratio:1}}
@media(prefers-reduced-motion:reduce){html:not([data-vox-motion-choice="running"]) .vox-globe>canvas,html:not([data-vox-motion-choice="running"]) .vox-globe>.globe-fallback{transition:none}}
body.motion-paused .vox-globe>canvas,body.motion-paused .vox-globe>.globe-fallback{transition:none}
