1(function(){var sectionsSel='.blog-hero-wrap, .blog-glass-card > .blog-hero-inner';function toggleSections(){if(window.location.hash==='#posts'){document.querySelectorAll(sectionsSel).forEach(function(el){var card=el.closest('.blog-glass-card')||el;card.style.display='none';});var postsEl=document.getElementById('posts');if(postsEl)postsEl.scrollIntoView({behavior:'auto',block:'start'});}else{document.querySelectorAll(sectionsSel).forEach(function(el){var card=el.closest('.blog-glass-card')||el;card.style.display='';});}} 2toggleSections();window.addEventListener('hashchange',toggleSections);})();document.querySelectorAll('.video-poster').forEach(function(el){el.addEventListener('click',function(){var url=this.getAttribute('data-video');this.innerHTML='<video controls autoplay playsinline style="width:100%;border-radius:12px;display:block"><source src="'+url+'" type="video/mp4"></video>';});});var blogSearchData=null;(function(){var el=document.getElementById('searchIndex');if(el)blogSearchData=JSON.parse(el.textContent);})();function filterPosts(q){q=q.toLowerCase().trim();var grid=document.getElementById('postsGrid');var nav=document.getElementById('paginationNav');var noRes=document.getElementById('searchNoResults');var results=document.getElementById('searchResults');if(!q){if(grid)grid.style.display='';if(nav)nav.style.display='';if(noRes)noRes.style.display='none';if(results){results.innerHTML='';results.style.display='none';} 3return;} 4if(grid)grid.style.display='none';if(nav)nav.style.display='none';if(!results){results=document.createElement('div');results.id='searchResults';results.className='row g-4';grid.parentNode.insertBefore(results,grid.nextSibling);} 5var matches=[];if(blogSearchData){blogSearchData.forEach(function(item){if(item.t.toLowerCase().indexOf(q)!==-1){matches.push(item);}});} 6if(matches.length===0){results.style.display='none';results.innerHTML='';if(noRes)noRes.style.display='';}else{if(noRes)noRes.style.display='none';var html='';matches.forEach(function(item){var imgHtml='';if(item.i){var srcset=item.w?'<source srcset="'+item.w+'" type="image/webp">':'';imgHtml='<a href="'+item.u+'"><picture>'+srcset+'<img src="'+item.i+'" alt="'+item.t+'" width="400" height="160" loading="lazy" decoding="async" class="card-img-top" style="height:160px;object-fit:scale-down;border-radius:12px 12px 0 0"></picture></a>';} 7html+='<div class="col-md-6 col-lg-4">'+'<div class="blog-glass-card">'+ 8imgHtml+'<div class="card-body d-flex flex-column p-3 text-white">'+'<h3 class="card-title mb-1" style="font-size:1rem">'+'<a href="'+item.u+'" class="text-decoration-none text-white fw-bold">'+item.t+'</a></h3>'+'<p class="small mb-2 text-white-50"><i>'+item.d+'</i></p>'+'<a href="'+item.u+'" class="btn btn-outline-light btn-sm mt-auto align-self-start py-1 px-3" style="font-size:13px;border-radius:999px">Read more →</a>'+'</div></div></div>';});results.innerHTML=html;results.style.display='';}} 9document.querySelectorAll('.cta-card .blog-hero-inner a').forEach(function(a){a.textContent=a.textContent.replace(/â/g,'').trim();});document.querySelectorAll('.share-copy').forEach(function(btn){btn.addEventListener('click',function(){navigator.clipboard.writeText(this.getAttribute('data-url'));this.classList.add('copied');setTimeout(function(el){return function(){el.classList.remove('copied');};}(this),1500);});});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.