@media (prefers-reduced-motion: no-preference) {
  :is(.product-dialog,.info-dialog,.ar-dialog,.nl-dialog)[open] {
    animation: ht-panel-in 240ms cubic-bezier(.22,1,.36,1);
  }
  .bag-dialog[open] { animation: ht-bag-in 280ms cubic-bezier(.22,1,.36,1); }
  dialog[open]::backdrop { animation: ht-backdrop-in 180ms ease-out; }
  .player:not([hidden]) { animation: ht-player-in 240ms cubic-bezier(.22,1,.36,1); }
  .mobile-nav:not([hidden]) { animation: ht-menu-in 180ms ease-out; }
  .button { transition: background-color 180ms ease,color 180ms ease,transform 180ms ease; }
  .button:active { transform: translateY(0); }
  .release-play,.merch-plus { transition: background-color 180ms ease,transform 200ms ease; }
  .mh-photo-action>svg,.ar-nav>span[aria-hidden] { transition: transform 180ms ease; }
  .ar-nav:hover:not(:disabled)>span[aria-hidden] { transform: translateX(2px); }
  .ar-nav[data-archive-prev]:hover:not(:disabled)>span[aria-hidden] { transform: translateX(-2px); }
  .listen-top:hover .live-bars i,.listen-top:focus-visible .live-bars i,.has-player .live-bars i {
    animation: ht-meter 650ms ease-in-out infinite;
    transform-origin: center bottom;
  }
  .listen-top .live-bars i:nth-child(2) { animation-delay: -210ms; animation-duration: 780ms; }
  .listen-top .live-bars i:nth-child(3) { animation-delay: -380ms; animation-duration: 590ms; }
  .listen-top .live-bars i:nth-child(4) { animation-delay: -120ms; animation-duration: 710ms; }
  html.ht-motion-paused .live-bars i { animation-play-state: paused !important; }
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .release-card:hover .release-play,.merch-card:hover .merch-plus { transform: translateY(-3px); }
  .mh-image-button:hover .mh-photo-action>svg { transform: translate(2px,-2px); }
}

@keyframes ht-panel-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ht-bag-in { from { opacity: 0; transform: translateX(32px); } to { opacity: 1; transform: translateX(0); } }
@keyframes ht-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes ht-player-in { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes ht-menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes ht-meter { 0%,100% { transform: scaleY(.4); } 50% { transform: scaleY(1); } }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button:hover,.button:active,.release-play,.merch-plus,.live-bars i { transform: none; }
  dialog[open],dialog[open]::backdrop,.player,.mobile-nav,.live-bars i { animation: none !important; }
}
