Object reference is required to access non-static member?

I’m following a tutorial making my first RTS game, I’ve came across an error which I can’t seem to figure out…

"Assets/Scripts/Player/UserInput.cs(11,36): error CS0120: An object reference is required to access non-static member ‘UnityEngine.Transform.root’

What am I doing wrong, sorry for noob question, I’ve posted the UserInput.cs code below.

using UnityEngine;
using System.Collections;
using RTS;

public class UserInput : MonoBehaviour {

	private Player player;

	// Use this for initialization
	void Start () {
		player = Transform.root.GetComponent<Player> ();
	}
	
	// Update is called once per frame
	void Update () {

	}

	private void MouseActivity() {
		if (Input.GetMouseButtonDown (0)) LeftMouseClick();
		else if(Input.GetMouseButtonDown(1)) RightMouseClick();
	}

	private void LeftMouseClick() {
		if(player.hud.MouseInBounds()) {
			GameObject hitObject = FindHitObject ();
			Vector3 hitPoint = FindHitPoint ();
			if(hitObject && hitPoint != ResourceManager.InvalidPosition) {
				if(player.SelectedObject) player.SelectedObject.MouseClick(hitObject, hitPoint, player);
				else if(hitObject.name!="Ground") {
					WorldObject WorldObject = hitObject.transform.root.GetComponent<WorldObject>();
					if(WorldObject){
						//we knowno selected object
						player.SelectedObject = WorldObject;
						WorldObject.SetSelection(true);
					}
				}
			}
		}
	}

	private void RightMouseClick() {
		if (player.hud.MouseInBounds () && !Input.GetKey (KeyCode.LeftAlt) && player.SelectedObject) {
			player.SelectedObject.SetSelection (false);
			Player.SelectedObject = null;
		}
	}

	private GameObject FindHitObject() {
		Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
		RaycastHit hit;
		if(Physics.RayCast(ray, out hit)) return hit.collider.gameObject;
		return null;
	}

	private Vector3 FindHitPoint() {
		Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
		RaycastHit hit;
		if (Physics.Raycast (ray, out hit))
			return hit.point;
		return ResourceManager.InvalidPosition;
	}

}

player = Transform.root.GetComponent ();

Transform (with capital T) is a class name.

transform is the Transform instance in the GameObject the script is attached to.

You need the latter version here.