/* =========================================================
   UniSST V218 — HOVER/PREVIEW GLOBAL DE CARDS ACADÊMICOS
   Autorização explícita: usar em TODOS os cards de curso,
   antes e depois do login, o mesmo efeito da página Cursos.
   NÃO altera a geometria V215 em repouso: 4-up desktop,
   16:9 horizontal e 2:3 vertical permanecem bloqueados.
   ========================================================= */

/* Todos os cards acadêmicos com contrato de preview recebem a mesma base,
   independente da página, papel ou estado de autenticação. */
html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
  transform:translate3d(0,0,0) scale(1)!important;
  transform-origin:center center!important;
  transition:transform 430ms cubic-bezier(.22,.61,.36,1),box-shadow 470ms cubic-bezier(.22,.61,.36,1),filter 430ms ease!important;
  will-change:transform,box-shadow!important;
}

html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card :is(.card-img,.featured-preview-art,.ranked-course-art,.course-playlist-art,.pv205-card-media,.pv203-title-card-media){
  transition:transform 620ms cubic-bezier(.2,.7,.2,1),filter 560ms ease,box-shadow 470ms cubic-bezier(.22,.61,.36,1)!important;
  transform:translateZ(0) scale(1)!important;
}

/* Efeito de Cursos após login, agora universal para os horizontais. */
@media (hover:hover) and (pointer:fine){
  html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card:not(.prime-poster-card):is(:hover,.preview-pending,.preview-active){
    transform:translate3d(0,-3px,0) scale(1.018)!important;
    z-index:42!important;
    box-shadow:0 22px 54px rgba(0,0,0,.40)!important;
    filter:none!important;
  }
  html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card:not(.prime-poster-card):is(:hover,.preview-pending,.preview-active) :is(.card-img,.featured-preview-art,.ranked-course-art,.course-playlist-art,.pv205-card-media,.pv203-title-card-media){
    transform:scale(1.022)!important;
    filter:brightness(.92) saturate(1.04) contrast(1.025)!important;
    box-shadow:0 18px 44px rgba(0,0,0,.42)!important;
  }

  /* Vertical: o mesmo foco expandido 16:9 usado no super-carrossel.
     O tamanho 2:3 em repouso não é modificado. */
  html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a.prime-poster-card[data-course-preview="1"].v218-unified-card.pv-super-focus-active{
    flex-basis:var(--pv-super-focus-w)!important;
    width:var(--pv-super-focus-w)!important;
    min-width:var(--pv-super-focus-w)!important;
    max-width:var(--pv-super-focus-w)!important;
    aspect-ratio:16/9!important;
    z-index:42!important;
    border-radius:var(--pv-card-radius,12px)!important;
    box-shadow:0 22px 54px rgba(0,0,0,.48)!important;
  }

  /* Trilhos/containers nunca cortam a elevação ou o preview. */
  html body.streaming-system-v218 :is(.course-rail,.rail-shell,.catalog-grid,.prime-catalog-grid,.learning-course-rail,.course-playlist-grid,.related-courses){
    position:relative!important;
  }
  html body.streaming-system-v218 :is(.rail-shell,.course-rail){overflow-y:visible!important}
}

/* Nome no hover permanece em todos os cards e não captura cliques. */
html body.streaming-system-v218 .v218-unified-card .pv211-hover-title{pointer-events:none!important}

/* O painel flutuante é único e sempre fica acima dos trilhos, em qualquer página. */
html body.streaming-system-v218 .course-hover-preview{z-index:13000!important}

/* Mobile/touch: sem hover artificial. Mantém toque, scroll e proporções aprovadas. */
@media (max-width:900px), (hover:none), (pointer:coarse){
  html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card{
    transform:none!important;
    box-shadow:none!important;
  }
  html body.streaming-system-v218:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"].v218-unified-card :is(.card-img,.featured-preview-art,.ranked-course-art,.course-playlist-art,.pv205-card-media,.pv203-title-card-media){transform:none!important}
}

@media (prefers-reduced-motion:reduce){
  html body.streaming-system-v218 a[data-course-preview="1"].v218-unified-card,
  html body.streaming-system-v218 a[data-course-preview="1"].v218-unified-card *{transition-duration:.001ms!important;animation-duration:.001ms!important}
}
