# Plan: Development

1. **Setup**: Define CSS tokens and base styles.
2. **Trigger**: Build the button. Handle click to show dropdown.
3. **Listbox**: Build absolute div. Positioning logic.
4. **Search**: Add input. Implement filter logic.
5. **Options**: Loop through options. Add click listeners.
6. **Focus**: Add logic to prevent dropdown from closing if clicking inside.
7. **Keyboard**: Add Up/Down/Enter support.
8. **Refactor**: Extract CSS to `dropdown.css`.