The CSS files produced from XenForo don't get the correct last modified http header value. XenForo\CssOutput::displayCss() returns "Last-Modified: Thu, 01 Jan 1970 00:00:00 GMT" despite:
Quick fix to change it to page generation time:
The Cache-Control header could include the max-age attribute, as the Expires header is already setup to 2020. Adding an ETag (Enable ETag support for CSS Resource) would be great, too.
header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $this->_styleModifiedDate) . ' GMT')
header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');