While it is still manual, this is one method I use to stylize the default argument values more distinctly:

Added a ReST substitution: (Where to put it?)
.. |default| raw:: html
<div class="default-value-section"> <span class="default-value-label">Default:</span>
Then used it in docstring:
"""
:type host: str
:param host: Address of MongoDB host. |default| :code:`None`
:type port: int
:param port: Port of the MongoDB host. |default| :code:`None`
"""
and a little styling through custom CSS:
(note that you may need to add some extra rules to this CSS to override the styling of your theme, for instance: html.writer-html5 .rst-content ul.simple li
worked for me)
.default-value-section {
margin-bottom: 6px;
}
.default-value-section .default-value-label {
font-style: italic;
}
.default-value-section code {
color: #666;
}
Note that I haven't tested this method with multiple Sphinx themes and it may need adjustments for other themes. Tested with sphinx_rtd_theme
theme. Also note that this relies on HTML closing that first <div>
automatically which is a bit naughty. Would be sick for ReST to support default parameter values natively.