How to clamp my camera movement?

So I have a pretty basic fps script here. I can move the player and look around and my script seems to kinda clamp the camera already. The camera stops if I look up or down, I cannot just keep on rotating all the way around. But if I look right the way up or down and then rorate around I can get the camera to flip right the way over so everything is upside down. Any advice? Thanks.

(Happy to record the problem if my explanation is a little hard to understand)

 // camera movement

        Vector2 mouseInput = new Vector2(Input.GetAxisRaw("Mouse X"), Input.GetAxisRaw("Mouse Y")) * mouseSens;
     
        transform.rotation = Quaternion.Euler(transform.rotation.eulerAngles.x, transform.rotation.eulerAngles.y + mouseInput.x, transform.rotation.eulerAngles.z);

        camTrans.rotation = Quaternion.Euler(camTrans.rotation.eulerAngles + new Vector3(-mouseInput.y, 0f, 0f));

Check out some examples here:

http://wiki.unity3d.com/index.php/Category:MouseLook

Usually they track the elevation and traverse as floating point variables, clamp them, and then apply them to transforms.

Unfortunately I think all those scipts are a little out of my capability. Is there not something a bit more simple?