Causal reasoning with continuous outcomes