We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Panel 1.0: Divider takes 100% of window height
I'm on the current `main` branch of Panel. When I use the `Divider` it takes up 100% of the window height.

```python
import panel as pn

pn.extension(sizing_mode="stretch_width")

pn.panel("Header", styles={"background": "lightgray"}).servable()
pn.layout.Divider(styles={"background": "salmon"}).servable()
pn.panel("Footer", styles={"background": "lightgray"}).servable()
```

![image](https://user-images.githubusercontent.com/42288570/218242832-e2707e78-aba7-4f1e-b924-340496c7ab6b.png)

I don't know if it is on purpose. But the `styles` seem not to apply to the `Divider` either.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `panel/layout/spacer.py`
Content:
```
1 """
2 Spacer components to add horizontal or vertical space to a layout.
3 """
4 
5 import param
6 
7 from bokeh.models import Div as BkDiv, Spacer as BkSpacer
8 
9 from ..reactive import Reactive
10 
11 
12 class Spacer(Reactive):
13     """
14     The `Spacer` layout is a very versatile component which makes it easy to
15     put fixed or responsive spacing between objects.
16 
17     Like all other components spacers support both absolute and responsive
18     sizing modes.
19 
20     Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers
21 
22     :Example:
23 
24     >>> pn.Row(
25     ...    1, pn.Spacer(width=200),
26     ...    2, pn.Spacer(width=100),
27     ...    3
28     ... )
29     """
30 
31     _bokeh_model = BkSpacer
32 
33     def _get_model(self, doc, root=None, parent=None, comm=None):
34         properties = self._process_param_change(self._init_params())
35         model = self._bokeh_model(**properties)
36         if root is None:
37             root = model
38         self._models[root.ref['id']] = (model, parent)
39         return model
40 
41 
42 class VSpacer(Spacer):
43     """
44     The `VSpacer` layout provides responsive vertical spacing.
45 
46     Using this component we can space objects equidistantly in a layout and
47     allow the empty space to shrink when the browser is resized.
48 
49     Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers
50 
51     :Example:
52 
53     >>> pn.Column(
54     ...     pn.layout.VSpacer(), 'Item 1',
55     ...     pn.layout.VSpacer(), 'Item 2',
56     ...     pn.layout.VSpacer()
57     ... )
58     """
59 
60     sizing_mode = param.Parameter(default='stretch_height', readonly=True)
61 
62 
63 class HSpacer(Spacer):
64     """
65     The `HSpacer` layout provides responsive vertical spacing.
66 
67     Using this component we can space objects equidistantly in a layout and
68     allow the empty space to shrink when the browser is resized.
69 
70     Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers
71 
72     :Example:
73 
74     >>> pn.Row(
75     ...     pn.layout.HSpacer(), 'Item 1',
76     ...     pn.layout.HSpacer(), 'Item 2',
77     ...     pn.layout.HSpacer()
78     ... )
79     """
80 
81     sizing_mode = param.Parameter(default='stretch_width', readonly=True)
82 
83 
84 class Divider(Reactive):
85     """
86     A `Divider` draws a horizontal rule (a `<hr>` tag in HTML) to separate
87     multiple components in a layout. It automatically spans the full width of
88     the container.
89 
90     Reference: https://panel.holoviz.org/reference/layouts/Divider.html
91 
92     :Example:
93 
94     >>> pn.Column(
95     ...     '# Lorem Ipsum',
96     ...     pn.layout.Divider(),
97     ...     'A very long text... '
98     >>> )
99     """
100 
101     width_policy = param.ObjectSelector(default="fit", readonly=True)
102 
103     _bokeh_model = BkDiv
104 
105     def _get_model(self, doc, root=None, parent=None, comm=None):
106         properties = self._process_param_change(self._init_params())
107         properties['styles'] = {'width': '100%', 'height': '100%'}
108         model = self._bokeh_model(text='<hr style="margin: 0px">', **properties)
109         if root is None:
110             root = model
111         self._models[root.ref['id']] = (model, parent)
112         return model
113
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/panel/layout/spacer.py b/panel/layout/spacer.py
--- a/panel/layout/spacer.py
+++ b/panel/layout/spacer.py
@@ -102,10 +102,11 @@
 
     _bokeh_model = BkDiv
 
+    _stylesheets = ["css/divider.css"]
+
     def _get_model(self, doc, root=None, parent=None, comm=None):
         properties = self._process_param_change(self._init_params())
-        properties['styles'] = {'width': '100%', 'height': '100%'}
-        model = self._bokeh_model(text='<hr style="margin: 0px">', **properties)
+        model = self._bokeh_model(text='<hr>', **properties)
         if root is None:
             root = model
         self._models[root.ref['id']] = (model, parent)

{"golden_diff": "diff --git a/panel/layout/spacer.py b/panel/layout/spacer.py\n--- a/panel/layout/spacer.py\n+++ b/panel/layout/spacer.py\n@@ -102,10 +102,11 @@\n \n     _bokeh_model = BkDiv\n \n+    _stylesheets = [\"css/divider.css\"]\n+\n     def _get_model(self, doc, root=None, parent=None, comm=None):\n         properties = self._process_param_change(self._init_params())\n-        properties['styles'] = {'width': '100%', 'height': '100%'}\n-        model = self._bokeh_model(text='<hr style=\"margin: 0px\">', **properties)\n+        model = self._bokeh_model(text='<hr>', **properties)\n         if root is None:\n             root = model\n         self._models[root.ref['id']] = (model, parent)\n", "issue": "Panel 1.0: Divider takes 100% of window height\nI'm on the current `main` branch of Panel. When I use the `Divider` it takes up 100% of the window height.\r\n\r\n```python\r\nimport panel as pn\r\n\r\npn.extension(sizing_mode=\"stretch_width\")\r\n\r\npn.panel(\"Header\", styles={\"background\": \"lightgray\"}).servable()\r\npn.layout.Divider(styles={\"background\": \"salmon\"}).servable()\r\npn.panel(\"Footer\", styles={\"background\": \"lightgray\"}).servable()\r\n```\r\n\r\n![image](https://user-images.githubusercontent.com/42288570/218242832-e2707e78-aba7-4f1e-b924-340496c7ab6b.png)\r\n\r\nI don't know if it is on purpose. But the `styles` seem not to apply to the `Divider` either.\n", "before_files": [{"content": "\"\"\"\nSpacer components to add horizontal or vertical space to a layout.\n\"\"\"\n\nimport param\n\nfrom bokeh.models import Div as BkDiv, Spacer as BkSpacer\n\nfrom ..reactive import Reactive\n\n\nclass Spacer(Reactive):\n    \"\"\"\n    The `Spacer` layout is a very versatile component which makes it easy to\n    put fixed or responsive spacing between objects.\n\n    Like all other components spacers support both absolute and responsive\n    sizing modes.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Row(\n    ...    1, pn.Spacer(width=200),\n    ...    2, pn.Spacer(width=100),\n    ...    3\n    ... )\n    \"\"\"\n\n    _bokeh_model = BkSpacer\n\n    def _get_model(self, doc, root=None, parent=None, comm=None):\n        properties = self._process_param_change(self._init_params())\n        model = self._bokeh_model(**properties)\n        if root is None:\n            root = model\n        self._models[root.ref['id']] = (model, parent)\n        return model\n\n\nclass VSpacer(Spacer):\n    \"\"\"\n    The `VSpacer` layout provides responsive vertical spacing.\n\n    Using this component we can space objects equidistantly in a layout and\n    allow the empty space to shrink when the browser is resized.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Column(\n    ...     pn.layout.VSpacer(), 'Item 1',\n    ...     pn.layout.VSpacer(), 'Item 2',\n    ...     pn.layout.VSpacer()\n    ... )\n    \"\"\"\n\n    sizing_mode = param.Parameter(default='stretch_height', readonly=True)\n\n\nclass HSpacer(Spacer):\n    \"\"\"\n    The `HSpacer` layout provides responsive vertical spacing.\n\n    Using this component we can space objects equidistantly in a layout and\n    allow the empty space to shrink when the browser is resized.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Row(\n    ...     pn.layout.HSpacer(), 'Item 1',\n    ...     pn.layout.HSpacer(), 'Item 2',\n    ...     pn.layout.HSpacer()\n    ... )\n    \"\"\"\n\n    sizing_mode = param.Parameter(default='stretch_width', readonly=True)\n\n\nclass Divider(Reactive):\n    \"\"\"\n    A `Divider` draws a horizontal rule (a `<hr>` tag in HTML) to separate\n    multiple components in a layout. It automatically spans the full width of\n    the container.\n\n    Reference: https://panel.holoviz.org/reference/layouts/Divider.html\n\n    :Example:\n\n    >>> pn.Column(\n    ...     '# Lorem Ipsum',\n    ...     pn.layout.Divider(),\n    ...     'A very long text... '\n    >>> )\n    \"\"\"\n\n    width_policy = param.ObjectSelector(default=\"fit\", readonly=True)\n\n    _bokeh_model = BkDiv\n\n    def _get_model(self, doc, root=None, parent=None, comm=None):\n        properties = self._process_param_change(self._init_params())\n        properties['styles'] = {'width': '100%', 'height': '100%'}\n        model = self._bokeh_model(text='<hr style=\"margin: 0px\">', **properties)\n        if root is None:\n            root = model\n        self._models[root.ref['id']] = (model, parent)\n        return model\n", "path": "panel/layout/spacer.py"}], "after_files": [{"content": "\"\"\"\nSpacer components to add horizontal or vertical space to a layout.\n\"\"\"\n\nimport param\n\nfrom bokeh.models import Div as BkDiv, Spacer as BkSpacer\n\nfrom ..reactive import Reactive\n\n\nclass Spacer(Reactive):\n    \"\"\"\n    The `Spacer` layout is a very versatile component which makes it easy to\n    put fixed or responsive spacing between objects.\n\n    Like all other components spacers support both absolute and responsive\n    sizing modes.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Row(\n    ...    1, pn.Spacer(width=200),\n    ...    2, pn.Spacer(width=100),\n    ...    3\n    ... )\n    \"\"\"\n\n    _bokeh_model = BkSpacer\n\n    def _get_model(self, doc, root=None, parent=None, comm=None):\n        properties = self._process_param_change(self._init_params())\n        model = self._bokeh_model(**properties)\n        if root is None:\n            root = model\n        self._models[root.ref['id']] = (model, parent)\n        return model\n\n\nclass VSpacer(Spacer):\n    \"\"\"\n    The `VSpacer` layout provides responsive vertical spacing.\n\n    Using this component we can space objects equidistantly in a layout and\n    allow the empty space to shrink when the browser is resized.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Column(\n    ...     pn.layout.VSpacer(), 'Item 1',\n    ...     pn.layout.VSpacer(), 'Item 2',\n    ...     pn.layout.VSpacer()\n    ... )\n    \"\"\"\n\n    sizing_mode = param.Parameter(default='stretch_height', readonly=True)\n\n\nclass HSpacer(Spacer):\n    \"\"\"\n    The `HSpacer` layout provides responsive vertical spacing.\n\n    Using this component we can space objects equidistantly in a layout and\n    allow the empty space to shrink when the browser is resized.\n\n    Reference: https://panel.holoviz.org/user_guide/Customization.html#spacers\n\n    :Example:\n\n    >>> pn.Row(\n    ...     pn.layout.HSpacer(), 'Item 1',\n    ...     pn.layout.HSpacer(), 'Item 2',\n    ...     pn.layout.HSpacer()\n    ... )\n    \"\"\"\n\n    sizing_mode = param.Parameter(default='stretch_width', readonly=True)\n\n\nclass Divider(Reactive):\n    \"\"\"\n    A `Divider` draws a horizontal rule (a `<hr>` tag in HTML) to separate\n    multiple components in a layout. It automatically spans the full width of\n    the container.\n\n    Reference: https://panel.holoviz.org/reference/layouts/Divider.html\n\n    :Example:\n\n    >>> pn.Column(\n    ...     '# Lorem Ipsum',\n    ...     pn.layout.Divider(),\n    ...     'A very long text... '\n    >>> )\n    \"\"\"\n\n    width_policy = param.ObjectSelector(default=\"fit\", readonly=True)\n\n    _bokeh_model = BkDiv\n\n    _stylesheets = [\"css/divider.css\"]\n\n    def _get_model(self, doc, root=None, parent=None, comm=None):\n        properties = self._process_param_change(self._init_params())\n        model = self._bokeh_model(text='<hr>', **properties)\n        if root is None:\n            root = model\n        self._models[root.ref['id']] = (model, parent)\n        return model\n", "path": "panel/layout/spacer.py"}]}