        $programs = epg_programs_36h($dns,$user,$pass,$c["stream_id"]);
        $rowStart = time();
        $pxPerMin = 4;
    ?>
    <a class="row row36 navFocus <?=$is?'active':''?>"
       data-play="<?=htmlspecialchars(trim($dns,"/")."/live/".$user."/".$pass."/".$c["stream_id"].".m3u8")?>"
       data-name="<?=htmlspecialchars($c["name"] ?? "Canal")?>"
       data-logo="<?=htmlspecialchars($c["stream_icon"] ?? "")?>"
       data-now="<?=htmlspecialchars($epgNow ?? "No information")?>"
       data-next="<?=htmlspecialchars($epgNext ?? "No information")?>"
       href="tv_clean.php?cat=<?=urlencode($cat)?>&stream=<?=urlencode($c["stream_id"])?><?=$keepEpg?>">
        <div class="ch ch36">
            <?php if(!empty($c["stream_icon"])): ?><img src="<?=htmlspecialchars($c["stream_icon"])?>"><?php endif; ?>
            <span><?=htmlspecialchars($c["name"] ?? "Canal")?></span>
        </div>
        <div class="track36">
            <?php if(!$programs): ?>
                <div class="prog36 noinfo" style="left:0px;width:8640px">Sin información</div>
            <?php else: foreach($programs as $pr):
                $left=max(0,intval((($pr["start"]-$rowStart)/60)*$pxPerMin));
                $width=max(90,intval((($pr["end"]-$pr["start"])/60)*$pxPerMin));
                $nowProg=(time()>=$pr["start"] && time()<$pr["end"]);
            ?>
                <div class="prog36 <?=$nowProg?'nowProg':''?>" style="left:<?=$left?>px;width:<?=$width?>px">
                    <b><?=htmlspecialchars($pr["title"])?></b>
                    <small><?=pz_hora36($pr["start"])?> - <?=pz_hora36($pr["end"])?></small>
                </div>
            <?php endforeach; endif; ?>
        </div>
    </a>
    <?php endforeach; ?>
</section>

    </main>
</div>

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

function groups(){
