/* GERADO por gen_compat_css.py - NAO EDITAR NA MAO.
   So vale em WebView antigo (< 87). TV nova ignora este arquivo inteiro. */
@supports not (inset:0){
/* ---- de tv.css (49 regras) ---- */
.home-screen{padding:4vh 4vw}
.home-screen>*+*{margin-top:3.5vh}
.home-logo img{height:12vw}
.home-logo .brand-logo{font-size:9vw}
.home-grid>*+*{margin-left:1.6vw}
.home-tile{width:15.5vw;height:15.5vw;font-size:1.4vw}
.home-tile>*+*{margin-top:1.2vw}
.home-tile .tile-icon{width:5vw;height:5vw}
.home-reload{padding:1.4vh 4vw;font-size:1.4vw}
.home-device-info{font-size:1.3vw}
.live-topbar>*+*{margin-left:12px}
.live-topbar .tb-cell>*+*{margin-left:12px}
.live-body>*+*{margin-left:10px}
.live-categories>*+*{margin-top:8px}
.live-channels>*+*{margin-top:8px}
.channel-item>*+*{margin-left:14px}
.live-right>*+*{margin-top:10px}
.live-now>*+*{margin-left:14px}
.live-epg>*+*{margin-top:8px}
.epg-row>*+*{margin-left:14px}
.live-days>*+*{margin-top:8px}
.grid-topbar>*+*{margin-left:16px}
.player-volume{top:3vh;right:2vw;width:22vw}
.cat-sidebar{width:24vw}
.sidebar-content{left:24vw}
.poster-tile-tv{width:13vw}
.detail-hero{min-height:60vh}
.detail-hero .dh-content{padding:66px 5vw 3vh}
.detail-hero h1{font-size:5vw;margin-bottom:2vh}
.episode-tile{width:24vw}
.settings-menu{width:24vw}
.settings-content{left:calc(24vw + 30px)}
.channel-tile-tv{width:20vw}
.live-split>*+*{margin-left:16px}
.search-topbar>*+*{margin-left:16px}
.search-form>*+*{margin-left:12px}
@media (max-width: 1024px), (max-height: 600px){.cat-sidebar{width:32vw}}
@media (max-width: 1024px), (max-height: 600px){.sidebar-content{left:32vw}}
@media (max-width: 1024px), (max-height: 600px){.channel-tile-tv{width:30vw}}
@media (max-width: 1024px), (max-height: 600px){.detail-hero h1{font-size:5vw}}
@media (max-width: 1024px), (max-height: 600px){.settings-menu{width:30vw}}
@media (max-width: 1024px), (max-height: 600px){.settings-content{left:calc(30vw + 14px)}}
.tv-login-screen{padding:5vh 20px 28px}
.tv-login-card .login-brand .brand-logo-img{height:11vh}
.tp-top>*+*{margin-left:12px}
.tp-btn>*+*{margin-left:6px}
.tp-center>*+*{margin-left:10vw}
.dh-similar{padding:8px 5vw 36px}
@media (max-width:600px){.poster-tile-tv{width:27vw}}
/* ---- de index.html (50 regras) ---- */
@media (max-height:760px){.tv-login-card .login-brand .brand-logo-img{height:8vh !important}}
.next-ep-btn>*+*{margin-top:2px}
@media (max-width: 1024px), (max-height: 600px){.cat-sidebar{width:32vw}}
@media (max-width: 1024px), (max-height: 600px){.sidebar-content{left:32vw}}
@media (max-width: 1024px), (max-height: 600px){.channel-tile-tv{width:30vw}}
@media (max-width: 1024px), (max-height: 600px){.detail-hero h1{font-size:5vw}}
@media (max-width: 1024px), (max-height: 600px){.settings-menu{width:30vw}}
@media (max-width: 1024px), (max-height: 600px){.settings-content{left:calc(30vw + 14px)}}
@media (max-width:600px){.poster-tile-tv{width:27vw}}
/* ---- de zlocal.js (42 regras) ---- */
.zx-login-screen{top:0;right:0;bottom:0;left:0}
.zx-home2{top:0;right:0;bottom:0;left:0}
.zh-amb{top:0;right:0;bottom:0;left:0}
.zh-ui{top:0;right:0;bottom:0;left:0}
.zh-top>*+*{margin-left:2vw}
.zh-icons>*+*{margin-left:1.1vw}
.zh-tbtn>*+*{margin-left:.7vw}
.zh-recent>*+*{margin-top:1vw}
.zh-h2>*+*{margin-left:.9vw}
.zh-posters>*+*{margin-left:1.2vw}
.zh-poster{width:40vh;height:16.529vh}
.zh-nav>*+*{margin-left:1.3vw}
.zh-tile>*+*{margin-top:.7vw}
.zh-navr>*+*{margin-top:1.2vw}
.zh-navtop>*+*{margin-left:1.2vw}
.zh-navbot>*+*{margin-left:1.2vw}
.zh-stile>*+*{margin-left:.9vw}
.zh-status>*+*{margin-left:2.2vw}
.zh-status span>*+*{margin-left:.6vw}
.zx-ann-banner>*+*{margin-left:12px}
.zx-lic-warn>*+*{margin-left:12px}
.zx-offl-wrap{top:0;right:0;bottom:0;left:0}
.zx-offl-btns>*+*{margin-left:12px}
.zx-offl-box .btn-tv>*+*{margin-left:8px}
.zx-ff-ask{top:0;right:0;bottom:0;left:0}
.zx-ffa-opts>*+*{margin-left:14px}
#zx-mode-ask{top:0;right:0;bottom:0;left:0}
.zxm-gate-row>*+*{margin-left:12px}
.zxm-gate-opt>*+*{margin-top:6px}
#zxm-tut{top:0;right:0;bottom:0;left:0}
.zxm-tdots>*+*{margin-left:7px}
.zxm-tut-btns>*+*{margin-left:10px}
.zxm-page{top:0;right:0;bottom:0;left:0}
.zxm-back>*+*{margin-left:6px}
.zxm-head>*+*{margin-left:12px}
.zxm-btn>*+*{margin-left:7px}
.zxm-card>*+*{margin-top:4px}
.zxm-rows>*+*{margin-top:8px}
.zxm-row>*+*{margin-left:12px}
.zxm-ytwrap{top:0;right:0;bottom:0;left:0}
.zxm-ytframe{top:0;right:0;bottom:0;left:0}
#zx-exit .zx-exit-row>*+*{margin-left:18px}
}

/* ===== EXTRA do porta_samsung.py (nao editar a mao) =====
   O gerador nao alcanca estes casos; sao equivalencias escritas a mao, todas
   dentro do @supports abaixo -> motor novo (Tizen 7+) ignora o bloco inteiro. */
@supports not (inset: 0) {
  /* tela de login: inset:0 -> 4 lados (senao a caixa colapsa e o login some) */
  .zx-login-screen { top: 0 !important; right: 0 !important; bottom: 0 !important; left: 0 !important; }
  /* gap em flex dentro dos tiles da home (Chrome 84) */
  .zh-nav > .zh-tile > * + * { margin-top: .45vw !important; }
  .zh-navtop .zh-tile > * + * { margin-top: .45vw !important; }

  /* ===== PESO EM TV ANTIGA =====
     `.zh-amb` empilha TRES radial-gradient em tela cheia atras da home. Em GPU
     de TV isso e' repintado a cada movimento do foco — e' o "arrastado" ao
     navegar. Vira cor chapada: mesma decisao ja tomada nas telas que rolam
     (canais/filmes/series), onde o degrade tinha sido trocado por cor solida.
     O papel de parede do parceiro (.zx-home2) CONTINUA — e' imagem estatica,
     pintada uma vez, barata. */
  .zh-amb { background: none !important; }

  /* ===== capa da fileira de recentes, SEM medir =====
     `.zh-art` e' height:100% + aspect-ratio:2/3 (Chrome 88). A altura vem do
     `.zh-poster`, que este mesmo arquivo fixa em 16.529vh (= 40vh / 2.42),
     menos o padding .55vw dos dois lados e 1px de borda de cada lado.
     Largura = altura * 2/3. calc() e' Chrome 26 — roda em tudo.
     ⚠️ Isto substitui a medicao por JavaScript, que custava 197ms POR RENDER
     numa TV de 2021 (medido). Nao voltar a medir no caminho do render. */
  .zh-art { width: calc((16.529vh - 1.1vw - 2px) * 0.6667) !important; }

  /* ===== ROLAGEM DO CATALOGO =====
     Cada capa carrega `box-shadow: 0 5px 14px` — uma sombra COM DESFOQUE. Com
     ~30 capas visiveis, a GPU da TV refaz 30 desfoques a cada quadro enquanto
     se rola a grade: e' o "arrastado" ao descer nos filmes/series. Mesma
     decisao ja' tomada antes no brilho do foco da home. Em TV nova o bloco
     inteiro e' ignorado, entao o visual la' continua igual. */
  .pt-img { box-shadow: none !important; }
  /* foco do canal: mantem o anel solido, tira o halo desfocado */
  .channel-tile-tv:focus { box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.55) !important; }
}

/* ===== SEMPRE — porta_samsung.py (nao editar a mao); vale em toda Tizen =====
   Medido na TV 06/09: viewport 1920x1080. Telas em px fixos ficavam minusculas. */
body.ui-tv .zx-login-flat { zoom: 1.75; }
body.ui-tv .zx-ffa-card { zoom: 1.75; }
/* login com o NOSSO teclado (2e5): o campo e' um <button class="zx-in vkb-trigger"> */
.zx-login-flat button.zx-in { display: block; text-align: left; cursor: pointer; }
.zx-login-flat button.zx-in .vkb-display { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.zx-login-flat button.zx-in .vkb-empty { color: #5f6f68; }
/* editor de perfil com o NOSSO teclado (2e8): o campo e' um <button class="zx-pf-input vkb-trigger"> */
button.zx-pf-input { cursor: pointer; font-family: inherit; }
button.zx-pf-input .vkb-display { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
button.zx-pf-input .vkb-empty { color: #6d827a; }
