- How does a zero-JS dropdown work?
- `:focus-within` on the trigger container keeps the dropdown open while any child has focus. Combined with `:hover`, it works for both mouse and keyboard.
- Is it accessible?
- Partially. For full ARIA menu semantics (role=menu, keyboard navigation with Arrow keys) you need JavaScript. The CSS version is fine for simple navigation menus.
- Can I nest submenus?
- Yes — multiple levels work with the same :focus-within trick. Beyond two levels the UX gets cramped; consider a sidebar or mega menu instead.
- Does it close when clicking outside?
- Yes — losing focus closes it. No JS needed for the common case. For sticky dropdowns that require a click outside to close, JS is required.