full css version, and function improvements