/* MixTV (#145): conteúdo direto na moldura padrão dos módulos (título, abas e busca em public/app.js).
   Só tokens --mix-*; a capa (arte do conteúdo) é o único elemento escuro. Prefixo de tema para vencer a cascata da DS. */
html[data-mix-theme] .mixtv { display: grid; gap: var(--mix-space-6, 24px); min-width: 0; color: var(--mix-ink); }
html[data-mix-theme] .mixtv h2, html[data-mix-theme] .mixtv h3, html[data-mix-theme] .mixtv p { margin: 0; }
html[data-mix-theme] .mixtv-catalog, html[data-mix-theme] .mixtv-detail { display: grid; gap: var(--mix-space-6, 24px); min-width: 0; }

/* Vitrine (layout novo): destaque, faixas e Explore vêm da DS (MixUI.media*, mix-fiscal-components.css).
   Aqui só o encaixe na página do módulo. */
html[data-mix-theme] .mixtv .mixtv-catalog { grid-template-columns: minmax(0, 1fr); gap: var(--mix-space-8, 32px); }
html[data-mix-theme] .mixtv .mixtv-catalog--grid { gap: var(--mix-space-4, 16px); }
/* Selo da produção Mix Fiscal sobre a capa (zona segura superior direita, docs/mixtv-capas.md). */
/* #409: proporção da capa de referência (MF ≈ 8% da largura da capa 16:9), pequeno e discreto em todos os formatos. */
html[data-mix-theme="mix-fiscal-default"] .mix-media-art > .mixtv-brand-seal--media { position: absolute; z-index: 4; top: 5%; right: 4%; width: 8%; min-width: 20px; max-width: 48px; height: auto; object-fit: contain; opacity: .92; filter: drop-shadow(0 1px 2px rgb(0 0 0 / 45%)); pointer-events: none; }
html[data-mix-theme="mix-fiscal-default"] .mix-media-art--portrait > .mixtv-brand-seal--media { top: 4%; right: 6%; width: 13%; }
html[data-mix-theme="mix-fiscal-default"] .mix-media-art--hero > .mixtv-brand-seal--media { top: 6%; right: 3%; width: 4.5%; max-width: 64px; }
html[data-mix-theme="mix-fiscal-default"] .mixtv-detail__actions { display: flex; gap: var(--mix-space-2, 8px); }
html[data-mix-theme] .mixtv-progress { height: 4px; overflow: hidden; border-radius: var(--mix-radius-pill, 999px); background: var(--mix-border-strong); }
html[data-mix-theme] .mixtv-progress i { display: block; height: 100%; background: var(--mix-blue); }

/* Arte (capa) compartilhada pelo catálogo, destaque e Home */
html[data-mix-theme] .mixtv-artwork { position: relative; display: block; width: 100%; aspect-ratio: 2 / 3; overflow: hidden; border-radius: var(--mix-radius-xl, 14px); background: linear-gradient(135deg, var(--mix-navy), var(--mix-blue-deep)); container-type: inline-size; box-shadow: var(--mix-shadow-sm); }
html[data-mix-theme] .mixtv-artwork > .mixtv-artwork__image { display: block; width: 100%; height: 100%; object-fit: cover; }
html[data-mix-theme] .mixtv-artwork > .mixtv-brand-seal { position: absolute; z-index: 4; top: 4%; right: 5%; width: 23%; max-width: 72px; height: auto; object-fit: contain; filter: drop-shadow(0 1px 3px rgb(0 0 0 / 55%)); pointer-events: none; }
html[data-mix-theme] .mixtv-artwork__empty { display: grid; place-items: center; height: 100%; color: var(--mix-on-blue); opacity: .55; }
html[data-mix-theme] .mixtv-artwork--editorial { aspect-ratio: 46 / 65; }
html[data-mix-theme] .mixtv-artwork--editorial > .mixtv-brand-seal { top: 1%; right: 3%; width: 18%; }
/* Data impressa na capa editorial do RH News: faz parte da arte (cores da revista). */
html[data-mix-theme] .mixtv-cover-date { position: absolute; z-index: 3; top: 5.7%; right: 0; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 39.4%; height: 3%; padding: 0 4.2% 0 2.5%; clip-path: polygon(8% 0, 100% 0, 100% 100%, 3.5% 100%); background: linear-gradient(90deg, var(--mix-blue-deep) 0 89.5%, var(--mix-green) 89.5% 100%); color: var(--mix-on-blue) !important; font: 700 1.45cqw/1 var(--mix-font-sans); letter-spacing: .15em; white-space: nowrap; }

/* Conteúdo aberto */
html[data-mix-theme] .mixtv-back { display: inline-flex; align-items: center; gap: var(--mix-space-1, 4px); justify-self: start; color: var(--mix-blue-deep); font-size: var(--mix-type-label-size, 12px); font-weight: 600; text-decoration: none; }
html[data-mix-theme] .mixtv-detail__grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .8fr); gap: var(--mix-space-6, 24px); align-items: start; }
html[data-mix-theme] .mixtv-player { display: grid; gap: var(--mix-space-3, 12px); min-width: 0; }
html[data-mix-theme] .mixtv-player__stage { display: grid; place-items: center; min-height: 220px; overflow: hidden; border-radius: var(--mix-halo-card-radius, 18px); background: var(--mix-navy-deep); }
html[data-mix-theme] .mixtv-player__stage .mix-empty-state { border-color: transparent !important; background: transparent !important; box-shadow: none !important; }
html[data-mix-theme] .mixtv-player__stage .mix-empty-state strong { color: var(--mix-on-blue) !important; }
html[data-mix-theme] .mixtv-player__stage .mix-empty-state p { color: var(--mix-on-blue) !important; opacity: .75; }
html[data-mix-theme] .mixtv-player__stage video, html[data-mix-theme] .mixtv-player__stage audio, html[data-mix-theme] .mixtv-player__stage iframe, html[data-mix-theme] .mixtv-player__stage > img { display: block; width: 100%; max-height: 620px; border: 0; }
html[data-mix-theme] .mixtv-player__stage video, html[data-mix-theme] .mixtv-player__stage iframe { aspect-ratio: 16 / 9; }
html[data-mix-theme] .mixtv-player__stage > img { object-fit: contain; }
html[data-mix-theme] .mixtv-player__stage .mixtv-editorial-reader { height: 75vh; min-height: 500px; max-height: none; aspect-ratio: auto; }
html[data-mix-theme] .mixtv-player > .mix-button { justify-self: start; }
html[data-mix-theme] .mixtv-player [data-mixtv-player-status] { margin: 0; color: var(--mix-warning); font-size: var(--mix-type-caption-size, 12px); }
html[data-mix-theme] .mixtv-detail__copy { display: grid; gap: var(--mix-space-3, 12px); justify-items: start; min-width: 0; }
html[data-mix-theme] .mixtv-detail__copy h2 { color: var(--mix-ink); font-size: var(--mix-type-page-size, 20px); font-weight: 700; line-height: 1.3; }
html[data-mix-theme] .mixtv-detail__copy p { color: var(--mix-body); font-size: var(--mix-type-body-size, 14px); line-height: 1.55; }
html[data-mix-theme] .mixtv-progress-meter { display: grid; gap: var(--mix-space-1, 4px); width: 100%; max-width: 320px; }
html[data-mix-theme] .mixtv-progress-text { color: var(--mix-muted); font-size: var(--mix-type-caption-size, 12px); }
html[data-mix-theme] .mixtv-detail--editorial .mixtv-detail__grid { grid-template-columns: 1fr; }
html[data-mix-theme] .mixtv-detail--editorial .mixtv-detail__copy { max-width: 850px; }
/* Curso: aulas por módulo, na ordem; a aula no palco fica marcada. */
html[data-mix-theme] .mixtv-detail__meta { color: var(--mix-muted); font-size: var(--mix-type-caption-size, 12px); }
html[data-mix-theme] .mixtv-course-outline { display: grid; gap: var(--mix-space-4, 16px); width: 100%; }
html[data-mix-theme] .mixtv-course-module { display: grid; gap: var(--mix-space-2, 8px); }
html[data-mix-theme] .mixtv-course-module h3 { color: var(--mix-ink); font-size: var(--mix-type-label-size, 12px); font-weight: 700; }
html[data-mix-theme] .mixtv-lessons { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
html[data-mix-theme] .mixtv-lessons__item { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: var(--mix-space-2, 8px); align-items: center; padding: var(--mix-space-2, 8px); border-radius: var(--mix-radius-md, 10px); color: var(--mix-ink); font-size: var(--mix-type-body-size, 14px); text-decoration: none; }
html[data-mix-theme] .mixtv-lessons__item:hover { background: var(--mix-blue-050); }
html[data-mix-theme] .mixtv-lessons__item:focus-visible { outline: none; box-shadow: var(--mix-focus-ring); }
html[data-mix-theme] .mixtv-lessons__item.is-active { background: var(--mix-blue-050); color: var(--mix-blue-deep); font-weight: 700; }
html[data-mix-theme] .mixtv-lessons__number { color: var(--mix-muted); font-size: var(--mix-type-caption-size, 12px); font-variant-numeric: tabular-nums; text-align: right; }
html[data-mix-theme] .mixtv-lessons__time { color: var(--mix-muted); font-size: var(--mix-type-caption-size, 12px); font-weight: 400; white-space: nowrap; }
html[data-mix-theme] .mixtv-player__caption { display: grid; gap: var(--mix-space-1, 4px); justify-items: start; }
html[data-mix-theme] .mixtv-lessons__item.is-soon { grid-template-columns: auto minmax(0, 1fr); color: var(--mix-muted); }
html[data-mix-theme] .mixtv-player__caption strong { color: var(--mix-ink); font-size: var(--mix-type-body-size, 14px); }
html[data-mix-theme] .mixtv-player__caption p { margin: 0; color: var(--mix-body); font-size: var(--mix-type-body-size, 14px); line-height: 1.55; }

/* Home: faixa "Últimos lançamentos" (MixUI.mediaShelf) */
html[data-mix-theme] .mixtv-home { min-width: 0; }
html[data-mix-theme] .mixtv-home__header { display: flex; align-items: center; justify-content: space-between; gap: var(--mix-space-4, 16px); margin-bottom: var(--mix-space-4, 16px); }
html[data-mix-theme] .mixtv-home__header h2 { margin: 3px 0 0; }
html[data-mix-theme] .mixtv-home-rh-cover { display: block; flex-shrink: 0; width: 100%; max-width: 260px; margin: 0 auto var(--mix-space-4, 16px); }
html[data-mix-theme] .mixtv-home-rh-cover .mixtv-artwork { aspect-ratio: 46 / 65; }

@media (max-width: 760px) {
  html[data-mix-theme] .mixtv-detail__grid { grid-template-columns: 1fr; }
  html[data-mix-theme] .mixtv-home__header { align-items: flex-start; }
}
/* Trecho do YouTube: o palco acompanha o 16:9 do vídeo (sem faixas no celular). */
html[data-mix-theme] .mixtv-player__stage:has(> .mixtv-youtube) { min-height: 0; }
html[data-mix-theme] .mixtv-lessons__item.is-soon:hover { background: none; }
