protected function reflectCss( FieldsetInterface $fieldset, $selector )
    {
        foreach ( $fieldset->getFieldsets() as $subFieldset )
        {
            if ( ! $subFieldset instanceof Collection )
            {
                $this->reflectCss( $subFieldset, $selector );
            }
        }

        foreach ( $fieldset->getElements() as $name => $element )
        {
            $types = array_filter( preg_split( '/\s+/', trim(
                $element->getAttribute( 'data-js-type' )
            ) ) );

            $types[] = 'js.paragraph.reflectCss';

            $element->setAttributes( array(
                'data-js-type'                  => implode( ' ', $types ),
                'data-js-reflectcss-selector'   => $selector,
                'data-js-reflectcss-property'   => String::decamelize( $name ),
            ) );
        }

        return $fieldset;
    }