Implementing hidden content parts (as in old "Hidden Content" module) There is (long unsupported) &quot;Hidden Content&quot; module, allowing to insert content blocks visible by certain roles only, i.e. like below:
[hidden role=&quot;Role Name&quot;]
   ...content visible to &quot;Role Name&quot; role only
[/hidden]

I browsed through related modules (from &quot;Content Access Control&quot; etc), but see no good match for this module's capabilities. Are there any simple means to achieve the above without either re-implementing the module for Drupal 9 or using inline PHP?
&quot;Paragraphs Access Control&quot; looks somewhat suitable, but it requires creating quite a complex structure only to restrict access to text blocks.
You could use Block Class module to set blocks with some useful classes like &quot;only-role_name&quot;, etc. and hide/display it on your theme stylesheet.

Maybe even you could set a new block type and, if this type has its own css class (I'm not sure about it), use it to hide/display using, again, your theme stylesheet.

You could, too, use a new content type to create the block contents and Views to render this as blocks where you need. Views is able to restrict his view depending on roles or permissions.