:root {
  --v91-orange: #ff5c35;
  --v91-black: #050505;
}

.v91-colour-stage {
  position: relative;
  isolation: isolate;
}

.v91-colour-stage .v83-product-base {
  position: relative;
  z-index: 1;
}

.v91-product-colour {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.v91-product-colour path {
  transition: fill .22s ease, opacity .22s ease;
}

.v91-colour-stage[data-product-slug="plain-classic-t-shirt"] .v91-product-colour {
  mix-blend-mode: screen;
}

.v91-colour-stage[data-product-slug="plain-cotton-polo"] .v91-product-colour,
.v91-colour-stage[data-product-slug="plain-oversized-shirt"] .v91-product-colour {
  mix-blend-mode: multiply;
}

.v91-colour-stage .v83-product-artwork {
  z-index: 3;
}

.v91-colour-stage .v83-stage-label {
  z-index: 4;
  border-color: rgba(255,255,255,.55);
  background: rgba(5,5,5,.82);
  color: #fff;
  backdrop-filter: blur(12px);
}

.v91-colour-stage .v83-stage-label strong {
  color: var(--v91-orange);
}

.v91-option-confirm {
  display: flex;
  align-items: center;
  gap: 9px;
}

.v91-option-confirm i {
  display: inline-block;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  border: 1px solid rgba(5,5,5,.55);
  border-radius: 50%;
  box-shadow: inset 0 0 0 2px #fff;
}

@media (prefers-reduced-motion: reduce) {
  .v91-product-colour path {
    transition: none;
  }
}
