/* ═══ AMAYNÜ — visualiseur de pièce ═══ */
.v360{position:relative;user-select:none;-webkit-user-select:none;outline:none;cursor:grab}
.v360.v360-drag{cursor:grabbing}
.v360:focus-visible{outline:1px solid var(--gold,#A88A5C);outline-offset:10px}

.v360-stage{position:relative;aspect-ratio:3/4;overflow:hidden;background:#EDE7DD}
.v360-f{position:absolute;inset:0;width:100%;height:100%;
  opacity:0;visibility:hidden;pointer-events:none;will-change:opacity}
/* la dérive automatique doit rester douce même en coupe franche */
.v360[data-blend="0"] .v360-f{transition:none}
.v360-f:first-of-type{opacity:1;visibility:visible}

.v360-load{position:absolute;inset:0;display:grid;place-items:center;z-index:3;
  background:#EDE7DD;transition:opacity .7s ease,visibility .7s}
.v360-load.done{opacity:0;visibility:hidden}
.v360-load i{display:block;width:30px;height:30px;border:1px solid rgba(28,26,23,.18);
  border-top-color:var(--gold,#A88A5C);border-radius:50%;animation:v360spin 1.1s linear infinite}
@keyframes v360spin{to{transform:rotate(360deg)}}

/* rail de progression — remplace les pastilles */
.v360-rail{position:relative;height:1px;margin-top:22px;cursor:pointer;
  background:currentColor;opacity:.2}
.v360-rail::before{content:'';position:absolute;inset:-12px 0}
.v360-rail i{display:block;height:1px;background:currentColor;
  transform-origin:0 50%;transform:scaleX(0);
  box-shadow:0 0 0 1px currentColor}

@media(prefers-reduced-motion:reduce){.v360-load i{animation:none}}
