Keep a quiet shortlist of lessons that caught your attention. These selections stay in this browser until you remove them or clear local storage.
Return to catalog
`;
document.getElementById("site-header").innerHTML=headerHTML;
document.getElementById("site-footer").innerHTML=footerHTML;
const out=document.getElementById("fallows-list"),key="rcs-favorites";
function applyTheme(){
const t=localStorage.getItem("rcs-theme")||"light";
if(t==="dark"){document.documentElement.style.filter="invert(1) hue-rotate(180deg)"}else{document.documentElement.style.filter=""}
}
function setupHeader(){
const menuBtn=document.getElementById("menu-toggle"),nav=document.getElementById("main-nav");
if(menuBtn&&nav){menuBtn.onclick=()=>nav.classList.toggle("hidden")}
const th=document.getElementById("theme-toggle");
if(th){th.onclick=()=>{const cur=localStorage.getItem("rcs-theme")||"light";localStorage.setItem("rcs-theme",cur==="light"?"dark":"light");applyTheme()}}
document.querySelectorAll('[data-open]').forEach(b=>b.onclick=()=>{alert("Modal opened for "+b.dataset.open+" (demo)")})
}
function render(items){
let ids=JSON.parse(localStorage.getItem(key)||"[]");
let a=items.filter(x=>ids.includes(x.id));
out.innerHTML=a.length?a.map(x=>`
${x.category}
${x.title}
${x.summary}
`).join(""):`
Your fallows shelf is ready for its first note.
Follow a course in the catalog and it will appear here.