Add contentType-specific limits, switch to lazy-init iff we encounter an oversized file, and restyle as a toast, factoring out a generic ToastView along the way.