## 1. Model

- [x] 1.1 Add inverse `menus()` relation on `LunchItem` (`belongsToMany` to `LunchBookingMenu` through `lunch_booking_menu_item`, mirroring `LunchBookingMenu::items()`).

## 2. Endpoint

- [x] 2.1 Add `GET /api/v1/admin/lunch-items/{id}/active-menus` on `LunchItemController`, gated by `lunch_items_index` + `checkCompanyAccess`: query the item's `menus()` where `status IN ('coming', 'available')`, select `id, display_name, started_at, closed_at, status`.
- [x] 2.2 Return `{ count, menus }`.
- [x] 2.3 Add OpenAPI doc block, following the existing style in `LunchItemController`.

## 3. Verification

- [x] 3.1 Manually exercise: item attached to a `coming` menu appears in the result; item attached only to `completed`/`cancelled` menus returns an empty result; item attached to no menu returns an empty result.
- [x] 3.2 Run `openspec validate add-lunch-item-active-menu-check --strict` and fix any reported issues.
