{{-- Reusable grouped checkbox filter. Each group renders a heading checkbox that only toggles its children: the values submitted with the form are always the child ids, so the backend search keeps working with the plain list of ids it already expects. Expected variables: - $id : unique dom id for the filter wrapper - $name : form field name for the children, e.g. "title_id[]" - $groups : collection of ['label' => string, 'children' => [['id','name','depth']]] - $searchPlaceholder : optional placeholder for the in-list search box --}}