### Summary

The documentation about how systems determine the default shell is confusing.

At the [shell parameter](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/user_module.html#parameter-shell) is written: "See notes for details on how other operating systems determine the default shell by the underlying tool."

The [Notes section](https://docs.ansible.com/ansible/latest/collections/ansible/builtin/user_module.html#notes) does not contain "details on how other operating systems determine the default shell".

If I read this, I would expect to find something along the lines of "On FreeBSD, the default shell is set by `dscl`". 

Instead, it contains notes on which underlying tools are used by the module to create, modify and remove accounts. This is only helpful if the reader is already aware of the fact that these underlying tools _also_ set the default shell.

Furthermore, since the notes at the shell parameter explicitly spell out what the default shell on macOS is, the user has a reasonable expectation to find similarly worded notes for other operating systems in the Notes.

A possible solution: replace "See notes for details on how other operating systems determine the default shell by the underlying tool." with "On other operating systems, the default shell is determined by the underlying tool invoked by this module. See Notes for a per platform list of invoked tools."

### Issue Type

Documentation Report

### Component Name

lib/ansible/modules/user.py

### Ansible Version

```console
N/a
```


### Configuration

```console
N/a
```


### OS / Environment

N/a

### Additional Information

Previous bug report and attempted (but IMO inadequate) fix here: https://github.com/ansible/ansible/issues/59796. 

### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
description:
            - Unless set to V(false), a home directory will be made for the user
              when the account is created or if the home directory does not exist.
            - Changed from O(createhome) to O(create_home) in Ansible 2.5.
        type: bool
        default: yes
        aliases: [ createhome ]
    move_home:
        description:
            - "If set to V(true) when used with O(home), attempt to move the user's old home
              directory to the specified directory if it isn't there already and the old home exists."
        type: bool
        default: no
    system:
        description:
            - When creating an account O(state=present), setting this to V(true) makes the user a system account.
            - This setting cannot be changed on existing users.
        type: bool
        default: no
    force:
        description:
            - This only affects O(state=absent), it forces removal of the user and associated directories on supported platforms.
            - The behavior is the same as C(userdel --force), check the man page for C(userdel) on your system for details and support.
            - When used with O(generate_ssh_key=yes) this forces an existing key to be overwritten.
        type: bool
        default: no
    remove:
        description:
            - This only affects O(state=absent), it attempts to remove directories associated with the user.
            - The behavior is the same as C(userdel --remove), check the man page for details and support.