$small-size: rem(24px);
$medium-size: rem(32px);
$large-size: rem(48px);
$stacking-order: (
  image: 10,
  shadow: 20,
);

.p_mm {
  position: relative;
  display: block;
  overflow: hidden;
  background: color('white');
  max-width: 100%;
  border-radius: border-radius();

  &::after {
    content: '';
    position: relative;
    z-index: z-index(shadow, $stacking-order);
    display: block;
    padding-bottom: 100%;
    box-shadow: inset 0 0 0 1px rgba(33, 43, 54, 0.1);
    border-radius: border-radius();
  }
}

.p_ew {
  width: $small-size;
}

.p_i5 {
  width: $medium-size;
}

.p_g3 {
  width: $large-size;
}

.p_pg {
  border-radius: 50%;
  &:after {
    border-radius: 50%;
  }
}

.p_vx {
  position: absolute;
  z-index: z-index(image, $stacking-order);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
}

.p_tj {
  position: absolute;
  z-index: z-index(image, $stacking-order);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  @include state(base);
  @include text-emphasis-strong;
  color: color('ink', 'lighter');
}