/* =========================================================
   UniSST V237 — HOME PÚBLICA ANTES DO LOGIN
   Escopo estrito: somente a Página inicial guest.

   Autorização explícita do usuário:
   - corrigir card recortado no carrossel da Home pública;
   - cards verticais 20% menores no desktop;
   - cards horizontais 20% maiores no desktop;
   - manter 2:3 e 16:9, hover/preview, selo, cadeado e marca;
   - imagem lateral administrável pode receber link clicável;
   - Home autenticada e demais páginas não mudam.
   ========================================================= */

/*
   CORREÇÃO DO RECORTE
   -------------------
   V225 zera o padding superior do trilho. No hover, o card horizontal usa
   scale(1.025), projetando alguns pixels acima da caixa rolável. Como um eixo
   do scroller é "auto", o navegador não consegue manter o outro eixo realmente
   "visible" e recorta essa projeção. Em vez de tentar brigar com o algoritmo de
   overflow, a V237 cria uma faixa de segurança REAL dentro do scroller.
*/
html body.public-home-v198.public-guest .uv198-public-rails .v217-course-rail,
html body.public-home-v198.public-guest .pv-public-rails .v217-course-rail{
  box-sizing:border-box!important;
  padding-top:16px!important;
  padding-bottom:22px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain!important;
  scrollbar-width:none!important;
}
html body.public-home-v198.public-guest .uv198-public-rails .v217-course-rail::-webkit-scrollbar,
html body.public-home-v198.public-guest .pv-public-rails .v217-course-rail::-webkit-scrollbar{display:none!important}

html body.public-home-v198.public-guest .uv198-public-rails .v217-rail-shell,
html body.public-home-v198.public-guest .pv-public-rails .v217-rail-shell{
  overflow:visible!important;
}

html body.public-home-v198.public-guest .v217-streaming-card{
  transform-origin:center center!important;
}

@media (min-width:900px){
  /* Variáveis locais da Home guest. A origem continua sendo a baseline vigente. */
  html body.public-home-v198.public-guest .v217-landscape-section{
    --uv237-card-w:calc(var(--pv-card-w) * 1.20);
    --uv237-card-h:calc(var(--pv-card-h) * 1.20);
    min-height:calc(var(--uv237-card-h) + 92px)!important;
  }
  html body.public-home-v198.public-guest .v217-poster-section{
    --uv237-poster-w:calc(var(--pv-poster-w) * .80);
    --uv237-poster-h:calc(var(--pv-poster-h) * .80);
    min-height:calc(var(--uv237-poster-h) + 92px)!important;
  }

  /* Robustez extra: V225 atualmente converte o trilho para flex. Se em alguma
     instalação a regra grid de V217 prevalecer, as colunas também recebem a
     nova medida e não haverá sobreposição/corte lateral. */
  html body.public-home-v198.public-guest .v217-landscape-section .v217-course-rail{
    grid-auto-columns:var(--uv237-card-w)!important;
  }
  html body.public-home-v198.public-guest .v217-poster-section .v217-course-rail{
    grid-auto-columns:var(--uv237-poster-w)!important;
  }

  /* Horizontal: +20% exatos sobre a baseline da Home. Mantém 16:9. */
  html body.public-home-v198.public-guest .v217-landscape-section .v217-course-rail >
  a.v220-reference-card.v220-landscape-card:not(.v220-grid-card){
    flex:0 0 var(--uv237-card-w)!important;
    flex-basis:var(--uv237-card-w)!important;
    width:var(--uv237-card-w)!important;
    min-width:var(--uv237-card-w)!important;
    max-width:var(--uv237-card-w)!important;
    height:var(--uv237-card-h)!important;
    min-height:var(--uv237-card-h)!important;
    max-height:var(--uv237-card-h)!important;
    aspect-ratio:16/9!important;
  }

  /* Vertical/poster: -20% exatos sobre a baseline da Home. Mantém 2:3. */
  html body.public-home-v198.public-guest .v217-poster-section .v217-course-rail >
  a.v220-reference-card.v220-poster-card:not(.v220-grid-card){
    flex:0 0 var(--uv237-poster-w)!important;
    flex-basis:var(--uv237-poster-w)!important;
    width:var(--uv237-poster-w)!important;
    min-width:var(--uv237-poster-w)!important;
    max-width:var(--uv237-poster-w)!important;
    height:var(--uv237-poster-h)!important;
    min-height:var(--uv237-poster-h)!important;
    max-height:var(--uv237-poster-h)!important;
    aspect-ratio:2/3!important;
  }

  /* Setas ficam presas à geometria NORMAL de cada orientação e começam depois
     da faixa de segurança. Assim não saltam quando hover/preview abre. */
  html body.public-home-v198.public-guest .v217-landscape-section .v217-rail-shell > .rail-arrow{
    top:16px!important;
    bottom:auto!important;
    height:var(--uv237-card-h)!important;
    min-height:var(--uv237-card-h)!important;
    max-height:var(--uv237-card-h)!important;
    transform:none!important;
  }
  html body.public-home-v198.public-guest .v217-poster-section .v217-rail-shell > .rail-arrow{
    top:16px!important;
    bottom:auto!important;
    height:var(--uv237-poster-h)!important;
    min-height:var(--uv237-poster-h)!important;
    max-height:var(--uv237-poster-h)!important;
    transform:none!important;
  }

  /* O super-preview do pôster parte da nova altura reduzida. A largura aberta
     continua horizontal, mas sem recuperar a altura antiga de 100%. */
  html body.streaming-system-v220.public-home-v198.public-guest:is(.prime-v086,.prime-public-v086)
  a[data-course-preview="1"].v220-reference-card.v220-poster-card.prime-poster-card.pv-super-focus-active{
    --v225-focus-h:var(--uv237-poster-h)!important;
    --v225-focus-w:min(calc(var(--v225-focus-h) * 1.60),calc(100vw - 56px))!important;
    flex-basis:var(--v225-focus-w)!important;
    width:var(--v225-focus-w)!important;
    min-width:var(--v225-focus-w)!important;
    max-width:var(--v225-focus-w)!important;
    height:var(--v225-focus-h)!important;
    min-height:var(--v225-focus-h)!important;
    max-height:var(--v225-focus-h)!important;
  }
}

/* Mobile/tablet preservam a geometria responsiva existente. A faixa de
   segurança permanece apenas para evitar corte de foco/toque. */
@media (max-width:899px){
  html body.public-home-v198.public-guest .uv198-public-rails .v217-course-rail,
  html body.public-home-v198.public-guest .pv-public-rails .v217-course-rail{
    padding-top:10px!important;
    padding-bottom:16px!important;
  }
}
