[WebGPU EP] Support Conv3D (#27917)
### Description
<!-- Describe your changes. -->
This pull request adds support for Conv3D operations to the WebGPU
execution provider in ONNX Runtime. The main changes include
implementing a new naive Conv3D shader, updating the convolution logic
to handle 3D convolutions, and enabling relevant tests for Conv3D on
WebGPU. Grouped Conv3D is not yet supported.
**Conv3D WebGPU support:**
* Added a new `Conv3DNaiveProgram` class (`conv3d_naive.h`,
`conv3d_naive.cc`) that implements a per-element Conv3D shader for
WebGPU, supporting both "channels last" and "channels first" layouts,
with optional bias and activation.
* Updated the main convolution logic in `conv.cc` to detect 5D tensors
(Conv3D), construct the appropriate shader program, and pass
spatial/stride/dilation parameters as uniforms. Grouped Conv3D is
explicitly disallowed for now.
* Included the new `conv3d_naive.h` header in the main convolution
implementation.
**Test coverage:**
* Enabled Conv3D tests for the WebGPU provider by removing it from the
excluded execution providers in several Conv3D test cases
(`conv_op_test.cc`).
* Added a note to the Conv3D fp16 test indicating that enabling it for
WebGPU will require additional infrastructure to conditionally skip
based on device capabilities.
### Motivation and Context
<!-- - Why is this change required? What problem does it solve?
- If it fixes an open issue, please link to the issue here. -->
Support additional cases in WebGPU EP Conv kernel.