/* TV Coiote Play — Radar de Notícias (cliente do plugin TvcPolitico) · 2026.09.18-politico.8
   O Radar ocupa a área da página da biblioteca, abaixo do cabeçalho do Jellyfin. Nenhuma outra tela é tocada. */
.tvcp-view {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 998; /* abaixo do cabeçalho (.skinHeader) e dos diálogos do Jellyfin */
  background: #050607;
}

.tvcp-frame {
  color-scheme: dark;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #050607;
}

html.tvcp-aberto body {
  overflow: hidden;
}

/* linha "Pastas / filtro / ordem / páginas" da biblioteca, escondida enquanto o Radar está aberto */
.tvcp-oculto {
  display: none !important;
}

/* Página de detalhes do item do Radar: a ação principal vira "Abrir" e somem os controles de vídeo. */
#itemDetailPage.tvc-politico .mainDetailButtons .btnPlay.detailButton .detailButton-content::after {
  content: "Abrir";
}

#itemDetailPage.tvc-politico :is(.btnReplay, .btnPlayTrailer, .btnDownload, .btnSplitVersions),
#itemDetailPage.tvc-politico :is(#scenesCollapsible, #specialsCollapsible, #musicVideosCollapsible) {
  display: none !important;
}

/* Embedded content becomes visible with its blocking stylesheet ready. */
.tvcp-frame.tvcp-pending { visibility: hidden; }

/* Owned by the radar lifecycle, bounded to authenticated themed library routes. */
.tvcp-route-loading { display: grid; place-items: center; color: #b8bdba; font: inherit; }

/* Failure stays within the same radar region; never uncover native controls. */
.tvcp-route-error > div { max-width: 26em; padding: 1.5em; text-align: center; }
.tvcp-route-error button, .tvcp-route-error a { display: inline-block; margin: .5em; padding: .7em 1em; font: inherit; color: #fff; border: 1px solid #ffffff30; border-radius: .5em; background: #ffffff12; text-decoration: none; cursor: pointer; }
.tvcp-route-error :is(button,a):focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
