</div>

<script>
let zone = 2;
let idx = [0,0,0,0,0];

function groups(){
    return [
        Array.from(document.querySelectorAll('.side .navFocus')),
        Array.from(document.querySelectorAll('.cats .cat')),
        Array.from(document.querySelectorAll('.grid .row')),
        Array.from(document.querySelectorAll('.videoBox')),
        Array.from(document.querySelectorAll('.refreshEpg'))
    ].map(a=>a.filter(e=>e && e.offsetParent !== null));
}

function setFocus(){
    const g = groups();
    g.flat().forEach(e=>e.classList.remove('focus'));

    if(!g[zone] || !g[zone].length) return;

    idx[zone] = Math.max(0, Math.min(idx[zone], g[zone].length - 1));

    const el = g[zone][idx[zone]];
    if(!el) return;

    el.classList.add('focus');
    el.setAttribute('tabindex','0');
    el.focus({preventScroll:true});
    el.scrollIntoView({block:'nearest', inline:'nearest'});
}

function enterItem(){
    const g = groups();
    const el = g[zone] && g[zone][idx[zone]];
    if(!el) return;

    if(zone === 3){
        const v=document.getElementById('mainVideo');
        if(v){
            v.muted=false;
            v.volume=1.0;
            if(v.requestFullscreen) v.requestFullscreen();
            else if(v.webkitRequestFullscreen) v.webkitRequestFullscreen();
        }
