Simple python code does not work
name : bpy.props.FloatProperty( name = name )

is assigning bpy.props.FloatProperty( name = name ) to the variable called name ( the name before the : )
Then you try to assign a value to so.custom_prop_gr.fl_prop which does not exist, because you used the variable name to create the custom property.
Then in your print command at the end:
print( &quot;dina prop (fl_prop): &quot;, so.custom_prop_gr.fl_prop )

is also trying to call so.custom_prop_gr.fl_prop which does not exist.
Change:
so.custom_prop_gr.fl_prop         = 90.5
print( &quot;dina prop (fl_prop): &quot;, so.custom_prop_gr.fl_prop )

to:
so.custom_prop_gr.name         = 90.5
print( &quot;dina prop (fl_prop): &quot;, so.custom_prop_gr.name )