/* =============================================================================
 * forms
 * ========================================================================== */

.ce_form {margin-bottom: 15px;}

/* fieldset+legend
------------------------------------------------- */
fieldset {
    padding: 0.5em;
    margin-bottom: 20px;
}

legend {display: none;}

/* input, select, textarea
------------------------------------------------- */
input.text,
input.captcha,
input.submit,
input.button,
input.reset,
select,
textarea {
    width: 100%;
    padding: 5px;
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/*input[type="search"] {
    -webkit-appearance: none;
    border-radius: 0;
}*/

input.text,
input.captcha,
input.checkbox,
input.radio,
input.submit,
input.button,
input.reset,
select,
textarea {
    -webkit-appearance: none;
    border-radius: 0;
}

select {
    height: 31px;
    padding: 8px;
}

textarea {height: 200px;}

/* radio-buttons
------------------------------------------------- */
.radio_container {margin-top: 1px;}

.radio_container legend span {
    margin-bottom: 5px;
    display: inline;
}

.radio_container label {float: none;}

.radio_container input {
    width: 20px;
    border: none;
    padding: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.radio_container legend {
    display: block;
    overflow: hidden;
}

.radio_container span {display: block;}

/* checkboxes
------------------------------------------------- */
.checkbox_container {margin-top: 1px;}

.checkbox_container legend span {
    margin-bottom: 5px;
    display: inline;
}

.checkbox_container label {float: none;}

.checkbox_container input {
    width: 20px!important;
    border: none!important;
    padding: 0;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.checkbox_container legend {
    display: block;
    overflow: hidden;
}

.checkbox_container span {display: block;}

/* submit-button
------------------------------------------------- */
.submit_container {
    float: left;
    margin-top: 10px;
}

.submit_container input {width: auto!important;}

.submit {
    -webkit-appearance:none;
    cursor: pointer;
}

/* errors
------------------------------------------------- */
label.error {color: red;}
input.error {border: 1px solid red;}
p.error {color: red; /*clear: both;*/}
p.error {float: none;}

input.text.error,
input.captcha.error,
input.checkbox.error,
input.radio.error,
select.error,
textarea.error {}

.ce_form .captcha_text.error {
    width: auto;
    float: left;
    display: block;
}

/* captcha
------------------------------------------------- */
.ce_form .captcha {
    width: 20%;
    margin-right: 2%;
}

.ce_form .captcha_text {
    width: 70%;
    line-height: 33px;
}

.ce_form .captcha_container {
    padding: 2%;
    background: #ecd0d0;
}

.ce_form .captcha_container label {display: block;}

/* custom
------------------------------------------------- */
.ce_form .required.mandatory {
    float: right;
    margin-top: 10px;
}