/* Cover actions remain separate from listening buttons and audio controls. */
.artwork-purchase-link{position:relative;isolation:isolate;overflow:hidden;--artwork-link-seconds:6s;--artwork-link-intensity:.35;color:inherit;text-decoration:none}
.artwork-purchase-link::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;opacity:var(--artwork-link-intensity);background:linear-gradient(110deg,transparent 32%,#c4f5ff99 47%,#fff 50%,transparent 65%);translate:-150% 0}
.artwork-purchase-link[data-artwork-animation=shine]::after{animation:artwork-link-shine var(--artwork-link-seconds) ease-in-out infinite}
.artwork-purchase-link[data-artwork-animation=float]{animation:artwork-link-float var(--artwork-link-seconds) ease-in-out infinite}
.artwork-purchase-link[data-artwork-animation=pulse]{animation:artwork-link-pulse var(--artwork-link-seconds) ease-in-out infinite}
.artwork-purchase-link[data-artwork-animation=none],.artwork-purchase-link[data-artwork-animation=none]::after,.artwork-purchase-link[data-artwork-animation=none] img,.artwork-purchase-link[data-artwork-static=true],.artwork-purchase-link[data-artwork-static=true]::after,.artwork-purchase-link[data-artwork-static=true] img{animation:none!important}
.artwork-purchase-link:focus-visible{outline:3px solid #83eeff;outline-offset:5px}
.artwork-purchase-link[data-artwork-hover=glow]:is(:hover,:focus-visible){box-shadow:0 0 0 1px #b0f4ff99,0 0 22px #65eaff45}
.artwork-purchase-link[data-artwork-hover=lift]:is(:hover,:focus-visible){translate:0 -4px}
@keyframes artwork-link-shine{0%,50%{translate:-150% 0}85%,100%{translate:150% 0}}
@keyframes artwork-link-float{0%,100%{translate:0 0}50%{translate:0 calc(var(--artwork-link-intensity)*-8px)}}
@keyframes artwork-link-pulse{0%,100%{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 calc(var(--artwork-link-intensity)*18px) #73eaff66)}}
@media(hover:hover) and (pointer:fine){.artwork-purchase-link[data-artwork-pause-hover=true]:hover,.artwork-purchase-link[data-artwork-pause-hover=true]:hover::after{animation-play-state:paused!important}}
.artwork-purchase-link[data-artwork-pause-hover=true]:focus-within,.artwork-purchase-link[data-artwork-pause-hover=true]:focus-within::after{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.artwork-purchase-link,.artwork-purchase-link::after,.artwork-purchase-link img{animation:none!important;transition:none!important}.artwork-purchase-link[data-artwork-hover=lift]:is(:hover,:focus-visible){translate:none}}
