(function(){'use strict';function escapeHtml(s){return String(s).replace(/[&<>"']/g,function(c){return({'&':'&','<':'<','>':'>','"':'"',"'":'''})[c];});} var STORAGE_KEY='rsc-engagement-v1:'+location.pathname;var STORAGE={load:function(){try{var raw=localStorage.getItem(STORAGE_KEY);if(!raw)return{ran:[],predictionsSeen:[],celebrated:false};var data=JSON.parse(raw);return{ran:Array.isArray(data.ran)?data.ran:[],predictionsSeen:Array.isArray(data.predictionsSeen)?data.predictionsSeen:[],celebrated:Boolean(data.celebrated)};}catch(e){return{ran:[],predictionsSeen:[],celebrated:false};}},save:function(data){try{localStorage.setItem(STORAGE_KEY,JSON.stringify(data));} catch(e){}}};var PREDICTIONS=(typeof window!=='undefined'&&typeof window.RSC_PREDICTIONS==='object'&&window.RSC_PREDICTIONS)||{};function discoverNextTutorial(){var current=location.pathname.split('/').pop();var links=document.querySelectorAll('#nav a, .col-sm-3 a');var arr=Array.prototype.slice.call(links);for(var i=0;i=0){for(var j=i+1;j'+' / '+pad2(total)+' · Interactive Blocks';var pills=document.createElement('div');pills.className='engagement-progress-pills';var pillsHtml='';for(var i=0;i