/* Full-HD safe edges; compatible with Chromium 68 on webOS 5. */
.gtv-intro{position:fixed;top:0;right:0;bottom:0;left:0;background:#050912;z-index:99999;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}
.gtv-intro img{width:25vw;max-width:460px;height:auto;position:relative;opacity:0;transform:translateY(34px) scale(.84);transition:opacity .6s ease-out,transform 1.1s cubic-bezier(.16,1,.3,1)}
.gtv-intro span{font:600 14px/1.5 Arial,sans-serif;letter-spacing:5px;color:#9ebcda;margin-top:28px;opacity:0;transition:opacity .8s ease .35s}
.intro-halo{position:absolute;width:60vw;height:60vw;max-width:1100px;max-height:1100px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,117,230,.2),transparent 66%);opacity:0;transition:opacity 1s}
.gtv-intro.intro-visible img{opacity:1;transform:translateY(0) scale(1)}.gtv-intro.intro-visible span,.gtv-intro.intro-visible .intro-halo{opacity:1}
.tv-pairing{width:100%}.tv-pairing h2{font:600 44px/1.13 var(--font-display);letter-spacing:-1.5px;margin:14px 0 28px;color:var(--text)}
.pair-card{display:grid;grid-template-columns:244px minmax(0,1fr);grid-column-gap:24px;align-items:center;padding:22px;background:#101c2d;border:1px solid #2a4161;border-radius:24px}
.pair-qr{width:244px;height:244px;background:white;border-radius:12px;overflow:hidden;padding:8px;display:flex;align-items:center;justify-content:center}.pair-qr svg{width:100%;height:100%}
.pair-details>span{font:500 11px/1.5 var(--font-mono);letter-spacing:1.8px;color:#8faac9}.pair-details strong{display:block;font:600 27px/1.5 var(--font-mono);letter-spacing:4px;color:#fff;margin:8px 0 12px;overflow-wrap:anywhere}.pair-details p{font-size:16px;line-height:1.55;margin:0}
#pair-status{font-size:16px;min-height:48px;margin:18px 0 12px}.pair-note{font-size:14px;margin-top:18px;color:#8fa3be}.pair-address{font:13px/1.4 var(--font-mono);color:#6e8ba8;margin-top:10px}
@media(min-width:1024px){
 html.tv-root{font-size:calc(100vw / 120)}
 .tv-mode{--sidebar-width:18rem}
 .tv-mode .sidebar{top:0;left:0;bottom:0;padding:2.5rem 1.75rem 2rem}
 .tv-mode .poster>img,.tv-mode .poster-fallback{top:0;left:0;right:0;bottom:0}
 .tv-mode .compact{width:9rem;margin:0 auto 2rem}
 .tv-mode .nav-caption{margin-bottom:1rem}
 .tv-mode .nav-item{font-size:1.25rem;min-height:3.5rem;padding:.75rem 1rem;line-height:1.3}
 .tv-mode .nav-item .icon{width:1.5rem;height:1.5rem;margin-right:.85rem}
 .tv-mode .sidebar-bottom{padding-top:1.5rem}
 .tv-mode .sidebar-version{font-size:.85rem;padding:.5rem 1rem}
 .tv-mode .main{margin-left:18rem;padding:0 3rem 3rem;min-height:100vh}
 .tv-mode .main>*{max-width:none;width:100%;margin-left:auto;margin-right:auto}
 .tv-mode .topbar{min-height:6.5rem;display:grid;grid-template-columns:minmax(160px,1fr) minmax(300px,34rem) auto;grid-column-gap:2rem;margin-bottom:2.5rem;padding:0}
 .tv-mode .menu-toggle{display:none}
 .tv-mode .search-box{width:100%;max-width:none;min-height:3.5rem;padding:0 1.2rem}
 .tv-mode .search-box input{height:3.25rem;font-size:1.15rem}
 .tv-mode .search-box>.icon{margin-right:.75rem}
 .tv-mode .connection-indicator{font-size:1.05rem;white-space:nowrap}
 .tv-mode #clock{font-size:1.15rem;margin-left:1rem}
 .tv-mode .page-heading{margin-bottom:1.75rem}
 .tv-mode .page-heading h1{font-size:2.5rem;line-height:1.15}
 .tv-mode .page-heading p{font-size:1.1rem}
 .tv-mode .catalog-toolbar{margin-bottom:1.6rem;min-height:3.5rem}
 .tv-mode .catalog-toolbar>*{margin-right:1rem}
 .tv-mode .catalog-toolbar .select{font-size:1.1rem;min-height:3.4rem;max-width:24rem}
 .tv-mode .catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:1.5rem}
 .tv-mode .live-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .tv-mode .card-title{font-size:1.15rem;line-height:1.35}
 .tv-mode .card-meta,.tv-mode .counter{font-size:.95rem}
 .tv-mode .favorite-button{font-size:.95rem;min-height:3rem}
 .tv-mode .catalog-pagination{margin-top:2rem}
 .tv-mode .episode-button{min-height:3.7rem;font-size:1.15rem}
 .tv-mode .epg-program strong{font-size:1.15rem}
 .tv-mode .epg-program time{font-size:.95rem}
 .tv-mode .login-screen{width:100%;max-width:none;min-height:100vh;grid-template-columns:54% 46%}
 .tv-mode .login-art{padding:3rem 3.5rem;min-height:100vh;justify-content:center;background:radial-gradient(ellipse at top left,#122c49,#090f1c 75%)}
 .tv-mode .login-art .brand{width:10rem;margin:0 0 2rem}
 .tv-mode.pair-enabled .login-editorial,.tv-mode.pair-enabled .login-art-bottom{display:none}
 .tv-mode .tv-pairing h2{font-size:2.75rem;margin:.9rem 0 1.75rem}
 .tv-mode .pair-card{grid-template-columns:16rem minmax(0,1fr);grid-column-gap:1.5rem;padding:1.5rem;border-radius:1.5rem}
 .tv-mode .pair-qr{width:16rem;height:16rem;padding:.5rem;border-radius:.75rem}
 .tv-mode .pair-details>span{font-size:.8rem}
 .tv-mode .pair-details strong{font-size:1.8rem;letter-spacing:.22rem}
 .tv-mode .pair-details p{font-size:1.05rem}
 .tv-mode #pair-status{font-size:1.05rem;min-height:3rem;margin:1rem 0 .5rem}
 .tv-mode .pair-note{font-size:.95rem;margin-top:1rem}
 .tv-mode .pair-address{font-size:.85rem}
 .tv-mode .login-content{max-width:none;width:100%;margin:auto;padding:3rem 3.5rem}
 .tv-mode .login-content h2{font-size:2rem;margin:.75rem 0 1rem}
 .tv-mode .login-intro{font-size:1.1rem;margin-bottom:1.6rem}
 .tv-mode .login-content .stack{display:grid;grid-row-gap:1.1rem}
 .tv-mode .login-content .input{min-height:3.6rem;font-size:1.2rem;padding:.8rem 1rem}
 .tv-mode .login-content .label{font-size:1.05rem;margin-bottom:.5rem}
 .tv-mode .hint{font-size:.9rem;line-height:1.45;margin-top:.6rem}
 .tv-mode .login-footnote{font-size:.85rem;line-height:1.5;margin-top:1rem}
 .tv-mode .login-content .btn,.tv-mode #pair-renew{font-size:1.1rem;min-height:3.4rem;padding:.8rem 1rem}
 .tv-mode .demo-divider{margin:1.15rem 0;font-size:.85rem}
 .tv-mode .two-columns{grid-template-columns:1fr;grid-row-gap:1.1rem}
 .tv-mode .connection-options{font-size:.9rem}
 .tv-mode dialog{max-height:calc(100vh - 6rem);width:88vw;max-width:88vw;overflow-y:auto;padding:2rem;top:3rem;bottom:auto;margin:0 auto}
 .tv-mode #player-dialog{width:88vw;padding:1.5rem 2rem}
 .tv-mode #player-stage{width:100%;height:calc(100vh - 20rem);max-height:48vw;aspect-ratio:auto}
 .tv-mode #player-stage:before{display:none}
 .tv-mode #player-stage video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain}
 .tv-mode .player-header{margin-bottom:1rem}
 .tv-mode .player-header h2{font-size:1.65rem}
 .tv-mode .player-footer{padding-top:1rem}
 .tv-mode .player-footer p{font-size:1rem}
 .tv-mode #player-epg{margin-top:1rem;font-size:.95rem}
 .tv-mode button:focus,.tv-mode a:focus,.tv-mode input:focus,.tv-mode select:focus,.tv-mode summary:focus{outline:3px solid #62b2ff;outline-offset:4px}
}
@media(prefers-reduced-motion:reduce){.gtv-intro img,.gtv-intro span,.intro-halo{transition:none;transform:none}}
