{% macro printStyle(styles) %}
    {% for key,value in styles %}
        {% if key == 'before' %}
            &:before {
            {{ _self.printStyle(styles[key]) }}
            }
        {% elseif key == 'after' %}
            &:after {
            {{ _self.printStyle(styles[key]) }}
            }
        {% elseif value != '' %}
            {{ key }}: {{ value|raw }};
        {% endif %}
    {% endfor %}
{% endmacro %}

{% set properties = item.properties|json_decode %}

{{ StyleHelper.generatePresetSelector('.moto-widget-contact_form', item.class_name) }} {
    .moto-widget-contact_form-form {
        {{ _self.printStyle(properties.form.desktop.base) }}
        .moto-widget-contact_form-label {
            {{ _self.printStyle(properties.input_label.desktop.base) }}
        }
        .moto-widget-contact_form-field {
            {{ _self.printStyle(properties.input_normal.desktop.base) }}
            &.ng-touched.ng-invalid {
                {{ _self.printStyle(properties.input_error.desktop.base) }}
            }
        }
        {% set printedPlaceholderStyles = _self.printStyle(properties.input_placeholder.desktop.base) %}
        .moto-widget-contact_form-field::-webkit-input-placeholder {
            {{ printedPlaceholderStyles }}
        }
        .moto-widget-contact_form-field::-moz-placeholder {
            {{ printedPlaceholderStyles }}
        }
        .moto-widget-contact_form-field:-ms-input-placeholder {
            {{ printedPlaceholderStyles }}
        }
        .moto-widget-contact_form-field-error {
            {{ _self.printStyle(properties.input_error_message.desktop.base) }}
        }
        .moto-widget-contact_form-success {
            {{ _self.printStyle(properties.form_success_message.desktop.base) }}
        }
        .moto-widget-contact_form-danger {
            {{ _self.printStyle(properties.form_error_message.desktop.base) }}
        }
    }
}
