Scale Object based on scroll wheel

i have followed a tutorial online for a portal style pickup object. i am just wondering if there is any way to add the feature to scale the held object based on the scroll wheel but capped at 0.1x and 4x ( e.g. scroll up makes it larger and scroll down makes it smaller.) i have tried to do it myself but cannot think of a way to do it.
Any help is much appreciated,
Kwollo

PickUp code (attached to player):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerInteractions : MonoBehaviour
{
    public float pickUpRange = 5;
    private GameObject heldObj;
    public Transform holdParent;
    public float moveForce = 250;
    public float size;

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Mouse0))
        {
            if(heldObj == null)
            {
                RaycastHit hit;
                if (Physics.Raycast(transform.position, transform.TransformDirection(Vector3.forward), out hit, pickUpRange))
                {
                    PickupObject(hit.transform.gameObject);
                }
            }
            else
            {
                DropObject();
            }
        }

        if(heldObj != null)
        {
            MoveObject();
        }
    }

    void MoveObject()
    {
        if(Vector3.Distance(heldObj.transform.position, holdParent.position) > 0.1f)
        {
            Vector3 moveDirection = (holdParent.position - heldObj.transform.position);
            heldObj.GetComponent<Rigidbody>().AddForce(moveDirection * moveForce);
        }
    }

    void PickupObject(GameObject pickObj)
    {
        if(pickObj.GetComponent<Rigidbody>())
        {
            Rigidbody objRig = pickObj.GetComponent<Rigidbody>();
            objRig.useGravity = false;
            objRig.drag = 10;

            objRig.transform.parent = holdParent;
            heldObj = pickObj;
        }
        
    }

    void DropObject()
    {
        Rigidbody heldRig = heldObj.GetComponent<Rigidbody>();
        heldRig.useGravity = true;
        heldRig.drag = 1;

        heldObj.transform.parent = null;
        heldObj = null;
    }
}

My attempt at the scale mechanic (attached to box):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ScaleObject : MonoBehaviour
{
    public float size = 1f;
    bool isPickedUp;
    public Transform PickUpcheck;
    public LayerMask pickedUpMask;
    // Update is called once per frame
    void Start()
    {
        size = 1f;
    }
    void Update()
    {
        isPickedUp = Physics.CheckSphere(PickUpcheck.position, 1, pickedUpMask);
        if (isPickedUp == true)
        {
            if (Input.GetAxis("Mouse ScrollWheel") > 0f)
            {
                if (size > 0.1f)
                {
                    size = size + 0.1f;
                    gameObject.transform.localScale = new Vector3(size, size, size);
                }
                else
                {
                    return;
                }
            }

            if (Input.GetAxis("Mouse ScrollWheel") > 0f)
            {
                if (size < 4f)
                {
                    size = size - 0.1f;
                    gameObject.transform.localScale = new Vector3(size, size, size);
                }
                else
                {
                    return;
                }
                
            }

        }
    }
}

Following code not tested

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 
 public class ScaleObject : MonoBehaviour
 {
     private float size;
     public float minSize = 0.1f;
     public flozg maxSize = 4f;
     public float sizeIncrement = 0.1f
     public Transform PickUpcheck;
     public LayerMask pickedUpMask;
     // Update is called once per frame
     void Start()
     {
         size = transform.localScale.x; // supposing all the components are the same
     }
     void Update()
     {
         if (Physics.CheckSphere(PickUpcheck.position, 1, pickedUpMask))
         {
             float scroll = Input.GetAxis("Mouse ScrollWheel");
             if (scroll > 0f && size + sizeIncrement <= maxSize)
             {
                   size += sizeIncrement;
                   transform.localScale += sizeIncrement * Vector3.one; // or transform.localScale = Vector3.one * scale;
             }
             else if (scroll < 0f && size - sizeIncrement >= minSize)
             {
                   size -= sizeIncrement;
                   transform.localScale -= sizeIncrement * Vector3.one; // or transform.localScale = Vector3.one * scale;
             }
         }
     }
 }

public class NewBehaviourScript : MonoBehaviour
{
Vector2 mousescroll;
float x;
float y;
// Start is called before the first frame update
void Start()
{

    }

    // Update is called once per frame
    void Update()
    {
        mousescroll = Input.mouseScrollDelta;
        x += mousescroll.y;
        y += mousescroll.y;
        transform.localScale = new Vector2(x, y);
        if(x > 4)
        {
            x = 4;
        }
        if(x < 0.1f)
        {
            x = 0.1f;
        }
        if(y > 4)
        {
            y = 4;
        }
        if(y < 0.1f)
        {
            y = 0.1f;
        }
    }
}