@charset "UTF-8";
.color-swatch {
  display: flex;
  align-items: center;
  gap: var(--spacing-25);
  cursor: pointer;
  flex-direction: column;
  padding-bottom: var(--spacing-50);
}
.color-swatch__label {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--spacing-100);
  cursor: pointer;
}
.disabled .color-swatch__label {
  opacity: 0.6;
}
.color-swatch__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.color-swatch__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
filter-drawer .color-swatch__info {
  flex-direction: row;
  margin-top: var(--spacing-50);
}
filter-drawer .color-swatch__info > span {
  margin-left: var(--spacing-50);
}
.color-swatch__count {
  color: inherit;
}
input.disabled + .color-swatch__label .color-swatch__circle:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -50%;
  width: 200%;
  height: 1px;
  background: var(--borders-color-medium);
  transform: rotate(-45deg);
  transform-origin: center;
}
input.disabled + .color-swatch__dot {
  border-color: var(--border-color-medium);
  color: var(--typography-color-disabled);
}
input.disabled ~ .color-swatch__info {
  color: var(--typography-color-disabled);
}
.color-swatch.default .color-swatch__dot {
  background-color: var(--typography-color-secondary);
  background-image: url(https://cdn.shopify.com/s/files/1/0731/6353/8646/files/8883a46e7a2a60ee806e73a8052191be.png?v=1738452721);
  background-position: center;
  background-repeat: repeat;
}
.color-swatch__dot {
  width: 25px;
  height: 25px;
  border: 1px solid transparent;
  position: relative;
  display: block;
  transition: box-shadow 0.2s ease;
  background: linear-gradient(
    to top right,
    var(--background-color) 50%,
    var(--background-color-2, var(--background-color)) 50%
  );
}
.color-swatch__dot img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
input:checked + .color-swatch__dot {
  border-color: var(--color-neutrals-800);
}
.color-swatch__dot[data-outline="dark"] {
  border-color: #000;
}
.product-form-options__list-item.color-swatch-item.color-swatch-item-selected:after {
  background-color: var(--typography-color-default);
}
@media (max-width: 767px) {
  .color-swatch__dot.pdp-color-swatch,
  .color-swatch__dot {
    width: 44px;
    height: 44px;
  }
}
.color-swatch__dot {
  border-radius: var(--borders-radius-none);
  position: relative;
}
.color-swatch__dot:before {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  left: 50%;
  height: 1px;
  margin-top: var(--spacing-50);
  background-color: var(--color-neutrals-400);
  pointer-events: none;
  transition:
    left 0.2s,
    right 0.2s;
}
.color-swatch__dot:focus {
  box-shadow:
    0 0 0 2px #fff,
    0 0 0 4px var(--color-neutrals-100);
}
input:checked + .color-swatch__dot:before {
  left: -1px;
  right: -1px;
  background-color: var(--typography-color-default);
}
@media (hover: hover) {
  .color-swatch:hover input + .color-swatch__dot:before {
    left: -1px;
    right: -1px;
  }
}
[data-option-wrapper].is-active .color-swatch__dot {
  box-shadow:
    0 0 0 2px #fff,
    0 0 0 4px #000;
}
.color-swatch .disabled + .color-swatch__dot:after {
  content: "";
  position: absolute;
  z-index: 19;
  top: -1px;
  left: -1px;
  margin: 0;
  width: var(--color-swatch-dot-size, 24px);
  height: var(--color-swatch-dot-size, 24px);
  background: linear-gradient(
    to top left,
    transparent calc(50% - 1px),
    var(--border-color-medium) 50%,
    transparent calc(50% + 1px)
  );
  filter: brightness(0.5);
}
@media (max-width: 767px) {
  .color-swatch .disabled + .color-swatch__dot.pdp-color-swatch:after {
    width: var(--color-swatch-dot-size, 44px);
    height: var(--color-swatch-dot-size, 44px);
  }
  .color-swatch .disabled + .color-swatch__dot:after {
    width: var(--color-swatch-dot-size, 44px);
    height: var(--color-swatch-dot-size, 44px);
  }
}
.color-swatch__dot__number {
  display: flex;
  align-items: center;
  justify-content: center;
}
