- Created `numAttribute` as a base class for `intAttribute` and `floatAttribute`.
- Moved shared validation logic for numeric attributes (e.g., min_val, max_val, step) into `numAttribute`.
- Simplified `intAttribute` and `floatAttribute` by inheriting from `numAttribute` and adding type-specific validation.
- Updated config to use the new structure, reducing redundancy and improving maintainability.