/* WATCH v41 — clean visual layer, no bookmark overrides.
   Keeps the good poster hover/text animation from v28 and removes only seasonal overlay.
   No MutationObserver, no fixed bookmark menus, no bookmark rewrites. */

#watchSnow,
.watch-snow,
canvas#watchSnow{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* WATCH v28 — hover animation like the reference, while keeping vertical posters/layout */

/* Keep the poster geometry from v26/v27. */
.mcard__img{
  overflow:hidden !important;
  border-radius:18px !important;
  clip-path:inset(0 round 18px) !important;
  background:#000 !important;
  isolation:isolate !important;
  contain:paint !important;
}
.mcard__img img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  border-radius:inherit !important;
  transform:translateZ(0) scale(1.018) !important;
  transform-origin:center center !important;
  backface-visibility:hidden !important;
}

/* Reference-like dim: soft, glassy fade, no layout jump. */
.mcard__img::after{
  content:"" !important;
  position:absolute !important;
  inset:-10px !important;
  border-radius:28px !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.52) 0%, rgba(0,0,0,.66) 54%, rgba(0,0,0,.76) 100%) !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity .32s cubic-bezier(.22,1,.36,1) !important;
  z-index:6 !important;
}
.mcard:hover .mcard__img::after,
.mcard.is-preview-open .mcard__img::after,
.mcard.is-bm-open .mcard__img::after{
  opacity:1 !important;
}

/* Keep the current vertical-card text placement. Only the motion changes. */
.mcard__overlay{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  align-items:flex-end !important;
  padding:12px !important;
  border-radius:inherit !important;
  overflow:hidden !important;
  background:transparent !important;
  clip-path:inset(0 round 18px) !important;
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
  z-index:8 !important;
  pointer-events:none !important;
}
.mcard__overlay::before{
  display:none !important;
  content:none !important;
}

/* The text no longer jumps from the bottom.
   It stays in the same bottom area, but softly appears from slightly above + deblurs,
   which matches the reference feel better on vertical posters. */
.mcard__overlayBody{
  position:relative !important;
  z-index:9 !important;
  bottom:auto !important;
  width:100% !important;
  opacity:0 !important;
  transform:translate3d(0,-10px,0) scale(.992) !important;
  filter:blur(5px) saturate(.9) !important;
  transition:
    opacity .46s cubic-bezier(.16,1,.3,1),
    transform .54s cubic-bezier(.16,1,.3,1),
    filter .46s cubic-bezier(.16,1,.3,1) !important;
  transition-delay:.04s !important;
  will-change:opacity, transform, filter !important;
}

.mcard:hover .mcard__overlayBody,
.mcard.is-preview-open .mcard__overlayBody,
.mcard.is-bm-open .mcard__overlayBody{
  opacity:1 !important;
  transform:translate3d(0,0,0) scale(1) !important;
  filter:blur(0) saturate(1) !important;
}

/* Stagger the internal text very slightly; this makes it feel 60fps even if screen capture is 30fps. */
.mcard__overlayTitle,
.mcard__overlayDesc{
  transform:translate3d(0,-6px,0) !important;
  opacity:0 !important;
  transition:
    opacity .42s cubic-bezier(.16,1,.3,1),
    transform .50s cubic-bezier(.16,1,.3,1) !important;
  will-change:opacity, transform !important;
}
.mcard__overlayDesc{
  transition-delay:.07s !important;
}
.mcard:hover .mcard__overlayTitle,
.mcard.is-preview-open .mcard__overlayTitle,
.mcard.is-bm-open .mcard__overlayTitle,
.mcard:hover .mcard__overlayDesc,
.mcard.is-preview-open .mcard__overlayDesc,
.mcard.is-bm-open .mcard__overlayDesc{
  opacity:1 !important;
  transform:translate3d(0,0,0) !important;
}

/* Keep the always-visible bottom title unchanged; only soften its fade when hover overlay appears. */
.mcard__title{
  transition:opacity .28s cubic-bezier(.22,1,.36,1), filter .28s cubic-bezier(.22,1,.36,1) !important;
}
.mcard:hover .mcard__title,
.mcard.is-preview-open .mcard__title,
.mcard.is-bm-open .mcard__title{
  opacity:0 !important;
  filter:blur(2px) !important;
}

/* Prevent older hotfixes from adding bottom movement back. */
.mcard__img:hover .mcard__overlayBody,
.mcard:hover .mcard__overlayBody,
.mcard:hover .mcard__overlayTitle,
.mcard:hover .mcard__overlayDesc{
  bottom:auto !important;
}
