/* ================================================================
   UniSST v112 — acesso controlado + cards de streaming compactos
   Camada final carregada depois de app.css, prime-v086.css e v110.
   Preserva a estrutura existente e corrige apenas apresentação/estado.
   ================================================================ */
:root{
  --u112-card-w:clamp(224px,17.2vw,258px);
  --u112-card-h:calc(var(--u112-card-w) * .5625);
  --u112-poster-w:clamp(176px,13.8vw,218px);
  --u112-poster-h:calc(var(--u112-poster-w) * 1.5);
  --u112-radius:7px;
  --u112-panel:#050505;
  --u112-panel-2:#181818;
  --u112-muted:#B1B1B1;
  --u112-gold:#e5bd54;
  --u112-border:rgba(255,255,255,.16);
}

/* 1) O CTA textual antigo não fica mais sobre a imagem do card. */
html body:is(.prime-v086,.prime-public-v086) .card-premium-cta{display:none!important}

/* 2) Geometria única de card antes e depois do login. */
html body.prime-v086.authenticated-home-page .v078-reference-home a.reference-landscape-card,
html body.prime-v086.authenticated-home-page .v078-reference-home .reference-standard-rail a.course-card,
html body.prime-public-v086 .pv-public-landscape-rail .pv-public-course-card,
html body:is(.prime-v086,.prime-public-v086) .related-courses .course-rail>a[data-course-preview="1"]{
  flex:0 0 var(--u112-card-w)!important;
  width:var(--u112-card-w)!important;min-width:var(--u112-card-w)!important;max-width:var(--u112-card-w)!important;
  height:var(--u112-card-h)!important;min-height:var(--u112-card-h)!important;max-height:var(--u112-card-h)!important;
  aspect-ratio:16/9!important;border-radius:var(--u112-radius)!important;
}
html body.prime-v086.authenticated-home-page .v078-reference-home .reference-poster-rail>a,
html body.prime-v086.authenticated-home-page .v078-reference-home a.prime-poster-card,
html body.prime-v086.authenticated-home-page .v078-reference-home a.featured-preview-card,
html body.prime-public-v086 .pv-public-poster-rail .pv-public-course-card{
  flex:0 0 var(--u112-poster-w)!important;
  width:var(--u112-poster-w)!important;min-width:var(--u112-poster-w)!important;max-width:var(--u112-poster-w)!important;
  height:var(--u112-poster-h)!important;min-height:var(--u112-poster-h)!important;max-height:var(--u112-poster-h)!important;
  aspect-ratio:2/3!important;border-radius:var(--u112-radius)!important;
}

html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"]{
  background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;
  text-decoration:none!important;outline-offset:3px!important;
}
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"] .card-img,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"] .featured-preview-art,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"] .ranked-course-art,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"] .course-playlist-art{
  border-radius:var(--u112-radius)!important;overflow:hidden!important;background-size:cover!important;background-position:center!important;
  box-shadow:0 3px 10px rgba(0,0,0,.44)!important;border:1px solid rgba(255,255,255,.035)!important;
  transition:filter .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"]:hover .card-img,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"]:hover .featured-preview-art,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"]:focus-visible .card-img,
html body:is(.prime-v086,.prime-public-v086) a[data-course-preview="1"]:focus-visible .featured-preview-art{
  filter:brightness(1.04)!important;box-shadow:0 12px 30px rgba(0,0,0,.68)!important;
}

/* A arte é a informação principal; detalhes completos aparecem no glance. */
html body:is(.prime-v086,.prime-public-v086) .catalog-grid a[data-course-preview="1"] .card-info,
html body:is(.prime-v086,.prime-public-v086) .catalog-grid a[data-course-preview="1"] .prime-card-info{
  display:none!important;
}
html body:is(.prime-v086,.prime-public-v086) .catalog-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:22px 14px!important;
}
html body:is(.prime-v086,.prime-public-v086) .catalog-grid a[data-course-preview="1"] .card-img{
  width:100%!important;height:auto!important;aspect-ratio:16/9!important;position:relative!important;
}
html body:is(.prime-v086,.prime-public-v086) .catalog-grid a[data-course-preview="1"] .card-img>img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;
}

/* Chips pequenos e brancos como na referência. */
html body:is(.prime-v086,.prime-public-v086) :is(.pv-public-chip,.popular-chip,.rank-badge,.deadline-badge){
  min-height:18px!important;height:auto!important;padding:3px 7px!important;border-radius:2px!important;
  background:#fff!important;color:#121212!important;border:0!important;font-size:9px!important;line-height:1!important;font-weight:850!important;
  letter-spacing:.015em!important;box-shadow:none!important;
}

/* 3) Painel de hover: imagem, título, estado e ações circulares. */
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance{
  width:min(350px,calc(100vw - 24px))!important;max-width:350px!important;height:auto!important;min-height:0!important;
  border-radius:8px!important;background:var(--u112-panel)!important;border:1px solid rgba(255,255,255,.07)!important;
  box-shadow:0 26px 74px rgba(0,0,0,.82)!important;overflow:hidden!important;z-index:1200!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-media{
  width:100%!important;height:auto!important;aspect-ratio:16/9!important;background:#050505!important;overflow:hidden!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-media:after{
  content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:30%!important;
  background:linear-gradient(0deg,var(--u112-panel),rgba(5,5,5,.54),transparent)!important;pointer-events:none!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-media :is(video,iframe,.course-hover-preview-fallback){
  width:100%!important;height:100%!important;object-fit:cover!important;background-color:#050505!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-body{
  min-height:0!important;max-height:none!important;padding:10px 14px 14px!important;background:var(--u112-panel)!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-title-row{
  display:block!important;margin:0!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-title-row b{
  display:block!important;margin:0!important;color:#f5f6f7!important;font-size:18px!important;line-height:1.18!important;font-weight:750!important;
  letter-spacing:0!important;white-space:normal!important;overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-entitlement{
  display:flex!important;align-items:flex-start!important;gap:6px!important;margin:7px 0 0!important;color:#edf0f2!important;
  font-size:11px!important;line-height:1.35!important;font-weight:500!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-entitlement:before{
  content:""!important;display:block!important;flex:0 0 13px!important;width:13px!important;height:13px!important;margin-top:1px!important;
  background:var(--u112-gold)!important;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V8a5 5 0 0 1 10 0v2h2v11H5V10h2Zm2 0h6V8a3 3 0 0 0-6 0v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V8a5 5 0 0 1 10 0v2h2v11H5V10h2Zm2 0h6V8a3 3 0 0 0-6 0v2Z'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-actions,
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance.compact-preview .course-hover-preview-actions{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;margin:10px 0 0!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance :is(.preview-action.primary,.preview-action.playlist){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;
  width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  padding:0!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.18)!important;background:#343434!important;color:#fff!important;
  box-shadow:none!important;transform:none!important;transition:background .15s ease,border-color .15s ease,transform .15s ease!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance :is(.preview-action.primary,.preview-action.playlist):hover{
  background:#4A4A4A!important;border-color:rgba(255,255,255,.42)!important;transform:scale(1.04)!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-action.primary[data-kind="start"]{
  background:#f3f4f5!important;color:#121212!important;border-color:#f3f4f5!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-action.primary[data-kind="pending"]{
  background:#203b2f!important;color:#79e0a9!important;border-color:#35664f!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-action.primary[data-kind="blocked"]{opacity:.6!important}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance :is(.preview-action.primary,.preview-action.playlist) span{display:none!important}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance :is(.preview-action.primary,.preview-action.playlist) svg{
  width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-action.primary[data-kind="start"] svg{fill:currentColor!important;stroke:none!important}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-meta{
  margin:10px 0 0!important;color:#DCDCDC!important;font-size:10.5px!important;line-height:1.35!important;font-weight:550!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .course-hover-preview-body p{
  margin:7px 0 0!important;color:#eef0f2!important;font-size:11.5px!important;line-height:1.35!important;font-weight:400!important;
  overflow:hidden!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance .preview-lock-note{display:none!important}

/* 4) Página do curso: CTA compacto; não volta ao botão gigante. */
html body:is(.prime-v086,.prime-public-v086) .course-access-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}
html body:is(.prime-v086,.prime-public-v086) .course-access-actions>form{display:inline-flex!important;width:auto!important;margin:0!important}
html body:is(.prime-v086,.prime-public-v086) .course-detail-hero .prime-play-btn,
html body:is(.prime-v086,.prime-public-v086) .course-access-actions .prime-play-btn{
  width:auto!important;min-width:0!important;max-width:min(100%,330px)!important;height:44px!important;min-height:44px!important;
  padding:0 17px!important;border-radius:8px!important;background:#f0f1f2!important;color:#121212!important;border:0!important;
  box-shadow:0 6px 18px rgba(0,0,0,.26)!important;font-size:13px!important;font-weight:750!important;gap:8px!important;
}
html body:is(.prime-v086,.prime-public-v086) .course-access-actions .access-request-btn{background:#3A3A3A!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important}
html body:is(.prime-v086,.prime-public-v086) .course-access-actions .access-request-btn:hover{background:#4E4E4E!important}
html body:is(.prime-v086,.prime-public-v086) .course-access-actions .prime-play-btn:disabled{opacity:.65!important;cursor:not-allowed!important}
html body:is(.prime-v086,.prime-public-v086) .course-access-actions .prime-play-btn svg{width:17px!important;height:17px!important}
html body:is(.prime-v086,.prime-public-v086) .course-playlist-action{display:inline-flex!important;align-items:center!important;gap:7px!important}
html body:is(.prime-v086,.prime-public-v086) .course-playlist-action .prime-circle-btn{width:44px!important;height:44px!important;min-width:44px!important;border-radius:50%!important;background:#383838!important;border:1px solid rgba(255,255,255,.16)!important}

/* 5) Administração: manutenção densa, leitura rápida e ícones uniformes. */
html body.prime-v086.admin-context .studio-panel{border-radius:12px!important}
html body.prime-v086.admin-context .clean-table-wrap table{font-size:11px!important}
html body.prime-v086.admin-context .clean-table-wrap th{font-size:9px!important;letter-spacing:.08em!important}
html body.prime-v086.admin-context .clean-table-wrap td{padding:9px 8px!important;vertical-align:middle!important}
html body.prime-v086.admin-context .premium-list .lesson-management-row{min-height:52px!important;padding:8px 10px!important}
html body.prime-v086.admin-context .premium-list .lesson-management-row b{font-size:11.5px!important}
html body.prime-v086.admin-context .premium-list .lesson-management-row small{font-size:9px!important}
html body.prime-v086.admin-context .icon-row-actions{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:nowrap!important}
html body.prime-v086.admin-context .icon-action{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;border-radius:8px!important;padding:0!important}
html body.prime-v086.admin-context .icon-action svg{width:15px!important;height:15px!important}

/* 6) Busca: lupa isolada do texto em qualquer tela que reutilize o componente. */
html body:is(.prime-v086,.prime-public-v086) .catalog-search{position:relative!important;display:flex!important;align-items:center!important}
html body:is(.prime-v086,.prime-public-v086) .catalog-search>svg{position:absolute!important;left:13px!important;top:50%!important;transform:translateY(-50%)!important;width:17px!important;height:17px!important;z-index:2!important;pointer-events:none!important}
html body:is(.prime-v086,.prime-public-v086) .catalog-search>input{padding-left:42px!important;text-indent:0!important}

/* 7) Responsividade. Em touch não existe hover: card continua abrindo a página,
      onde o CTA correto é Ver aulas ou Solicitar acesso. */
@media(max-width:1280px) and (min-width:921px){
  :root{--u112-card-w:clamp(210px,20vw,240px);--u112-poster-w:clamp(170px,16vw,205px)}
  html body:is(.prime-v086,.prime-public-v086) .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:920px) and (min-width:681px){
  :root{--u112-card-w:clamp(200px,28vw,232px);--u112-poster-w:clamp(160px,22vw,195px)}
  html body:is(.prime-v086,.prime-public-v086) .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:680px){
  :root{--u112-card-w:74vw;--u112-card-h:41.625vw;--u112-poster-w:42vw;--u112-poster-h:63vw}
  html body:is(.prime-v086,.prime-public-v086) .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 9px!important}
  html body:is(.prime-v086,.prime-public-v086) .course-hover-preview.pv-glance{display:none!important}
  html body:is(.prime-v086,.prime-public-v086) .course-access-actions .prime-play-btn{max-width:calc(100vw - 38px)!important;height:42px!important;min-height:42px!important;font-size:12px!important}
  html body:is(.prime-v086,.prime-public-v086) .course-playlist-caption{display:none!important}
}


/* 8) Uniformidade final dos cards de curso em catálogo, dashboard e relacionados. */
html body:is(.prime-v086,.prime-public-v086) a.course-card[data-course-preview="1"] .card-center-play,
html body:is(.prime-v086,.prime-public-v086) a.course-card[data-course-preview="1"] .learning-play-chip{display:none!important}
html body:is(.prime-v086,.prime-public-v086) :is(.catalog-grid,.learning-course-rail,.related-courses .course-rail) a.course-card[data-course-preview="1"]{
  border:0!important;background:transparent!important;border-radius:var(--u112-radius)!important;box-shadow:none!important;overflow:visible!important
}
html body:is(.prime-v086,.prime-public-v086) :is(.catalog-grid,.learning-course-rail,.related-courses .course-rail) a.course-card[data-course-preview="1"] .card-img{
  width:100%!important;aspect-ratio:16/9!important;min-height:0!important;height:auto!important;border-radius:var(--u112-radius)!important;overflow:hidden!important
}
html body:is(.prime-v086,.prime-public-v086) :is(.catalog-grid,.learning-course-rail,.related-courses .course-rail) a.course-card[data-course-preview="1"] .card-info{display:none!important}
html body:is(.prime-v086,.prime-public-v086) :is(.included-badge,.pv-public-chip,.popular-chip,.rank-badge,.deadline-badge){
  min-height:18px!important;padding:3px 7px!important;border-radius:2px!important;background:#fff!important;color:#121212!important;border:0!important;
  box-shadow:none!important;font-size:9px!important;line-height:1!important;font-weight:850!important;letter-spacing:.015em!important
}
html body:is(.prime-v086,.prime-public-v086) .included-badge i{display:none!important}
