const button=document.getElementById('mobile-toggle'),sidebar=document.getElementById('sidebar'),desktop=matchMedia('(min-width:681px)'),key='psiq-raiz:menu-recolhido'; const originalIcon=button.innerHTML; let collapsed=false;try{collapsed=localStorage.getItem(key)==='true'}catch{} function syncButton(){const open=desktop.matches?!collapsed:sidebar.classList.contains('open');button.setAttribute('aria-expanded',String(open));const label=open?'Recolher menu lateral':'Abrir menu lateral';button.setAttribute('aria-label',label);button.title=label} function apply(){document.body.classList.toggle('member-sidebar-collapsed',desktop.matches&&collapsed);sidebar.inert=desktop.matches&&collapsed;button.innerHTML=desktop.matches?'':originalIcon;syncButton()} button.addEventListener('click',event=>{if(!desktop.matches)return;event.preventDefault();event.stopImmediatePropagation();collapsed=!collapsed;try{localStorage.setItem(key,String(collapsed))}catch{}apply()},true); new MutationObserver(syncButton).observe(sidebar,{attributes:true,attributeFilter:['class']}); desktop.addEventListener('change',()=>{sidebar.classList.remove('open');const backdrop=document.getElementById('side-backdrop');if(backdrop)backdrop.hidden=true;apply()}); apply();