diff --git a/gadjo/templates/gadjo/widget.html b/gadjo/templates/gadjo/widget.html
index a937698..899cf3e 100644
--- a/gadjo/templates/gadjo/widget.html
+++ b/gadjo/templates/gadjo/widget.html
@@ -1,6 +1,7 @@
-{% load i18n %}
+{% load gadjo i18n %}
diff --git a/gadjo/templatetags/gadjo.py b/gadjo/templatetags/gadjo.py
index 685de2d..4e551c4 100644
--- a/gadjo/templatetags/gadjo.py
+++ b/gadjo/templatetags/gadjo.py
@@ -7,6 +7,7 @@ from xstatic.main import XStatic
from django import template
from django.conf import settings
from django.core.exceptions import ImproperlyConfigured
+from django.forms import BoundField
from django.utils.html import escape
from django.utils.http import urlencode
@@ -122,3 +123,15 @@ def querystring(parser, token):
def with_template(form):
form_template = template.loader.get_template('gadjo/form.html')
return form_template.render({'form': form})
+
+
+# pattern to transform Django camel case class names to CSS class names with
+# dashes. (CheckboxInput -> checkbox-input)
+class_name_pattern = re.compile(r'(?