.metallic {
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.9), 1px 2px 1px 0 rgba(255, 255, 255, 0.3) inset, 3px 5px 2px -2px rgba(255, 255, 255, 0.1) inset, 1px 3px 0 1px rgba(0, 0, 0, 0.3), 3px 6px 2px -2px rgba(0, 0, 0, 0.2);
}
.metallic::after {
  content: "";
  position: absolute;
  inset: -30%;
  pointer-events: none;
  background: linear-gradient(112deg, rgba(255, 255, 255, 0) 42%, var(--metallic-sheen, rgba(255, 255, 255, 0.42)) 50%, rgba(255, 255, 255, 0) 58%);
  transform: translateX(-34%);
  transition: transform 0.55s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.metallic:hover::after, .metallic.is-lit::after {
  transform: translateX(34%);
}
@media (prefers-reduced-motion: reduce) {
  .metallic::after {
    transition: none;
  }
}

.metallic.metallic-flat {
  box-shadow: none;
}

.metallic-trigger:hover .metallic::after {
  transform: translateX(34%);
}
