/* guide.jsx — full Ghost user guide, restyled into the website chrome */ const GUIDE_TOC = [ { num: '01', id: 'setup', name: 'Quick Setup' }, { num: '02', id: 'playbook', name: 'The Confluence Playbook' }, { num: '03', id: 'modules', name: 'Module Reference' }, { num: '04', id: 'display', name: 'Display Toggles' }, { num: '05', id: 'dashboard', name: 'The Dashboard & Tutorial' }, { num: '06', id: 'lockout', name: 'Session Lockout' }, { num: '07', id: 'limits', name: 'Honest Limitations' }, { num: '08', id: 'trouble', name: 'Troubleshooting' }, ]; function Toc({ active }) { return ( ); } function Guide() { const [active, setActive] = useS('setup'); // ScrollSpy React.useEffect(() => { const handler = () => { const ids = GUIDE_TOC.map(t => t.id); const scrollY = window.scrollY + 140; let cur = ids[0]; for (const id of ids) { const el = document.getElementById(id); if (el && el.offsetTop <= scrollY) cur = id; } setActive(cur); }; window.addEventListener('scroll', handler); handler(); return () => window.removeEventListener('scroll', handler); }, []); return ( <>