/* Dialog focus restoration must never draw a rectangular frame around a card.
   Keep focus itself (keyboard navigation and dialog return still work). */
:is(.card-shell,.is-interactive-card,.pack-reveal-slot,.market-card-preview,.market-visit-card,.exchange-card-preview-button,.exchange-basket-preview):focus {
  outline:none !important;
  -webkit-tap-highlight-color:transparent;
}
@media (hover:hover) and (pointer:fine) {
  :is(.is-interactive-card,.pack-reveal-slot,.market-card-preview,.market-visit-card,.exchange-card-preview-button,.exchange-basket-preview):focus-visible .card-face {
    filter:drop-shadow(0 0 7px #f2d58fcc) !important;
  }
}
/* Match the catalogue lift, without moving album slots or auction panels. */
@media (prefers-reduced-motion: no-preference) {
  .album-item.is-owned .card-shell,
  .market-card-preview .card-shell {
    transition:filter 160ms ease,transform 160ms ease;
  }
  .album-item.is-owned .card-face,
  .market-card-preview .card-face {
    transition:transform 170ms ease,filter 170ms ease;
  }
  .album-item.is-owned .card-shell:is(:hover,:focus-visible),
  .market-card-preview:is(:hover,:focus-visible) .card-shell {
    transform:translateY(-3px);
    filter:drop-shadow(0 18px 28px rgba(0,0,0,.42));
  }
  .album-item.is-owned .card-shell:is(:hover,:focus-visible) .card-face,
  .market-card-preview:is(:hover,:focus-visible) .card-face {
    transform:translateY(-1.2cqw) rotate(-.35deg);
    filter:drop-shadow(0 1.2cqw 1.8cqw rgba(0,0,0,.18));
  }
}
