/* =============================================================================
   99-search-profile-transition.css — v16.125
   PROFILES OPENED FROM A RESULTS PAGE SLIDE IN FROM THE RIGHT — 360ms.

   Owner spec: tapping any result on the shelf search page — movie, TV, anime,
   game, music, person — should bring the full-page profile in from the right
   edge, not fade it in.

   The slide itself already existed (`.discover-media-profile-from-right`, added
   v12.914) but only three of the search page's openers passed `fromRight`, so
   games, people, and the generic media path fell through to the fade. Those call
   sites are fixed in js/18-search-page.js; this file owns the TIMING and makes
   the rule unconditional.

   WHY THIS FILE RATHER THAN AN EDIT IN 05
   The original rule lives inside a `@media` block in 05-messages-early-polish.css,
   so it only applied at that breakpoint. Restating it here at top level means the
   transition is the same on every width, and puts the duration somewhere findable
   instead of a thousand lines into a file named after messages.

   PERFORMANCE
   transform + opacity only, on a promoted layer — nothing that triggers layout
   during the slide, which is what keeps it at 120Hz on ProMotion. `will-change`
   is set only while the class is present, so an idle profile is not holding a
   compositor layer for nothing.
   ============================================================================= */

.discover-media-profile-overlay.discover-media-profile-from-right,
.game-media-profile-overlay.discover-media-profile-from-right {
  opacity: 1 !important;
  transform: translate3d(100%, 0, 0) !important;
  /* 360ms, owner spec. The easing is the app's standard decelerate curve — fast
     out of the gate, settling softly, so the sheet reads as arriving rather than
     as being dragged. */
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform;
}

.discover-media-profile-overlay.discover-media-profile-from-right.open,
.game-media-profile-overlay.discover-media-profile-from-right.open {
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
}

/* Someone who has asked for less motion gets the sheet without the travel. */
@media (prefers-reduced-motion: reduce) {
  .discover-media-profile-overlay.discover-media-profile-from-right,
  .game-media-profile-overlay.discover-media-profile-from-right {
    transition: none !important;
    transform: translate3d(0, 0, 0) !important;
  }
}
