TL;DR: bokeh 3.0 renamed the Panel widget to TabPanel. Change your import to `from bokeh.models.widgets import TabPanel`, or pin bokeh below 3.

## The error
```text
ImportError: cannot import name 'Panel' from 'bokeh.models.widgets'
```

## Fix it
1. Update the import:
   ```python
   from bokeh.models.widgets import TabPanel, Tabs
   ```
   Expected: imports cleanly.
2. Rename usages: Panel(title=...) becomes TabPanel(title=...). Expected: same behavior.
3. Verify:
   ```
   python -c "from bokeh.models.widgets import TabPanel; print('ok')"
   ```
   Expected: prints ok.
4. Stopgap if you cannot edit the code: `pip install "bokeh<3"`. Expected: old import works again.

## When this applies
Use this when code does `from bokeh.models.widgets import Panel` on bokeh 3.x.

## When it does not apply
If you mean the Panel dashboarding library (a separate package), install panel instead. If the error names a different widget, check the bokeh 3.0 migration guide.

## Compatibility
bokeh 3.0+. Panel existed under that name through bokeh 2.x.

## Root cause
Bokeh renamed its Panel widget to TabPanel in 3.0 to end the confusion with the unrelated Panel dashboarding library. The old name was removed, not aliased, so old imports break.

## Edge cases
Tabs still takes a list of TabPanel children; only the class name changed. Holoviews and other wrappers handled the rename in their bokeh-3-compatible releases, so upgrade those too.