I learned that we can use $[\hat{\mu} - 1.96 \hat{\sigma}/\sqrt{n}, \hat{\mu} + 1.96 \hat{\sigma}/\sqrt{n}]$ as a confidence interval for the population mean, given a sample from the population, where $\hat{\mu}$ is the sample mean and $\hat{\sigma}$ is the sample SD and $n$ is the size of the sample.
However, I have a doubt about whether this is valid. I understand that the sample SD $\hat{\sigma}$ can be used as an estimator for the population SD $\sigma$, and that we can use the CLT to approximate the distribution of the sample mean as approximately normal. However, it seems that this confidence interval doesn't take into account the uncertainty in the population SD from drawing a sample (the population SD might be a bit larger or smaller than the sample SD), so intuitively, it seems like this formula might give me a confidence interval that is too narrow. So, is the formula above actually valid, and if so, why? Or is it not valid?
I prefer to avoid assuming that the population distribution is normal, though I'm also interested in the special case where the population is normally distributed.