6

Python 3, 421 392 bytes
import re
k=" "
def p(e):
l,*t=0,
for n in e:
if")"==n:break
if"("==n:z=p(e);l=max(l,z[0]+1);t+=[z]
else:l=max(l,1);t+=[n]
return[l]+t
t=p(iter(re.findall("[^() ]+|\S",input())[1:]))
def f(t,d=k):
if[*t]==t:
r="(";s=[f(i,d+k)for i in t[1:]]
if t[0]>2:
if l...