diff --git a/Yesod/Internal.hs b/Yesod/Internal.hs
--- a/Yesod/Internal.hs
+++ b/Yesod/Internal.hs
@@ -29,7 +29,6 @@
     ) where
 
 import Text.Hamlet (HtmlUrl, hamlet, Html)
-import Text.Cassius (CssUrl)
 import Text.Julius (JavascriptUrl)
 import Data.Monoid (Monoid (..), Last)
 import Data.List (nub)
@@ -44,6 +43,7 @@
 import Data.CaseInsensitive (CI)
 import Data.String (IsString)
 import qualified Data.Map as Map
+import Data.Text.Lazy.Builder (Builder)
 
 #if GHC7
 #define HAMLET hamlet
@@ -107,12 +107,14 @@
 sessionName :: IsString a => a
 sessionName = "_SESSION"
 
+type CssBuilderUrl a = (a -> [(Text, Text)] -> Text) -> Builder
+
 data GWData a = GWData
     !(Body a)
     !(Last Title)
     !(UniqueList (Script a))
     !(UniqueList (Stylesheet a))
-    !(Map.Map (Maybe Text) (CssUrl a)) -- media type
+    !(Map.Map (Maybe Text) (CssBuilderUrl a)) -- media type
     !(Maybe (JavascriptUrl a))
     !(Head a)
 instance Monoid (GWData a) where
diff --git a/Yesod/Internal/Core.hs b/Yesod/Internal/Core.hs
--- a/Yesod/Internal/Core.hs
+++ b/Yesod/Internal/Core.hs
@@ -50,7 +50,6 @@
 import Data.Monoid
 import Control.Monad.Trans.RWS
 import Text.Hamlet
-import Text.Cassius
 import Text.Julius
 import Text.Blaze ((!), customAttribute, textTag, toValue, unsafeLazyByteString)
 import qualified Text.Blaze.Html5 as TBH
@@ -504,7 +503,7 @@
                 Just (Left s) -> Just s
                 Just (Right (u, p)) -> Just $ render u p
     css <- forM (Map.toList style) $ \(mmedia, content) -> do
-        let rendered = renderCssUrl render content
+        let rendered = toLazyText $ content render
         x <- addStaticContent "css" "text/css; charset=utf-8"
            $ encodeUtf8 rendered
         return (mmedia,
diff --git a/Yesod/Widget.hs b/Yesod/Widget.hs
--- a/Yesod/Widget.hs
+++ b/Yesod/Widget.hs
@@ -192,7 +192,7 @@
 
 -- | Add some raw CSS to the style tag. Applies to all media types.
 addCassius :: Monad m => CssUrl (Route master) -> GGWidget master m ()
-addCassius x = GWidget $ tell $ GWData mempty mempty mempty mempty (Map.singleton Nothing x) mempty mempty
+addCassius x = GWidget $ tell $ GWData mempty mempty mempty mempty (Map.singleton Nothing $ \r -> fromLazyText $ renderCss $ x r) mempty mempty
 
 -- | Identical to 'addCassius'.
 addLucius :: Monad m => CssUrl (Route master) -> GGWidget master m ()
@@ -200,7 +200,7 @@
 
 -- | Add some raw CSS to the style tag, for a specific media type.
 addCassiusMedia :: Monad m => Text -> CssUrl (Route master) -> GGWidget master m ()
-addCassiusMedia m x = GWidget $ tell $ GWData mempty mempty mempty mempty (Map.singleton (Just m) x) mempty mempty
+addCassiusMedia m x = GWidget $ tell $ GWData mempty mempty mempty mempty (Map.singleton (Just m) $ \r -> fromLazyText $ renderCss $ x r) mempty mempty
 
 -- | Identical to 'addCassiusMedia'.
 addLuciusMedia :: Monad m => Text -> CssUrl (Route master) -> GGWidget master m ()
diff --git a/yesod-core.cabal b/yesod-core.cabal
--- a/yesod-core.cabal
+++ b/yesod-core.cabal
@@ -1,5 +1,5 @@
 name:            yesod-core
-version:         0.9.3.2
+version:         0.9.3.3
 license:         BSD3
 license-file:    LICENSE
 author:          Michael Snoyman <michael@snoyman.com>
@@ -60,7 +60,7 @@
                    , monad-control             >= 0.2      && < 0.3
                    , enumerator                >= 0.4.7    && < 0.5
                    , cookie                    >= 0.3      && < 0.4
-                   , blaze-html                >= 0.4      && < 0.5
+                   , blaze-html                >= 0.4.1.3  && < 0.5
                    , http-types                >= 0.6.5    && < 0.7
                    , case-insensitive          >= 0.2      && < 0.4
                    , parsec                    >= 2        && < 3.2
