Built as a single self-contained offline HTML file with responsive layout, accessible controls, combined filtering, reset, match counts, empty state, and a planning-only shortlist with total duration. All six workshops and their exact data are preserved.

Preview

I also tested the combined filters, reset behavior, shortlist add/remove flow, total-duration calculation, inclusion of full workshops in the shortlist, and a mobile viewport.