/* form */
form,
form .fieldset,
form .fieldset .legend,
form .row,
form .row .label,
form .row .field,
form .row .comment,
form .row .example,
form .row .required_message,
form .row .valid_message { display: block; margin: 0; padding: 0; text-decoration: none; line-height: normal; }
form .fieldset { position: relative; border: solid 1px #888888; padding: 25px 30px 5px 30px; margin-top: 3em; margin-bottom: 2.5em; }
form .fieldset label.title { position: absolute; top: -0.7em; padding: 0 10px; margin-left: -10px; line-height: normal; color: #808080; }
form .row { position: relative; clear: left; width: 100%; margin: 0 0 1.5em 0; }
form .row .label { float: left; width: 30%; margin-right: -100%; padding-top: 0.25em; }
form .row .field { width: 70%; padding-left: 30%; }
form .wide .label { float: none; width: auto !important; margin-right: 0; padding-bottom: 0.5em; }
form .wide .field { padding-left: 0 !important; width: auto !important; }
form .row select.wide { width: 100%; }
form input.text, form textarea { display: block; width: 100%; font-size: 14pt; float: left; }
form select { float: left; }
form textarea { overflow: visible; }
* html form .row .field { width: 69%; }
* html form textarea { overflow: auto; }

/* text & messages: comment, example, required, valid */
form .comment,
form .row .sublabel,
form .row .example,
form .row .tip,
form .row .required_message,
form .row .valid_message { font: 8pt Arial, sans-serif; color: #808080; margin-top: 0.4em; line-height: 1.5; }
form .row .sublabel { color: black; }
form .row .example { clear: both; width: 90%; }

/* disabled fileds */
form .disabled label,
form .disabled .legend,
form .disabled ins { opacity: 0.3; }
.hide_disabled .disabled { display: none; }

/* invalid fields */
form .invalid input,
form .invalid select,
form .invalid textarea,
form .invalid .valid_message { color: #e10015; }
form .valid input,
form .valid textarea { color: green; }

/* required fields */
form i.icon { background: url(/images/form-icons.gif) no-repeat; overflow: hidden; }
form td.iconInner { padding-left: 0.4em; }
form .required i.icon,
form .required-ok i.icon { position: relative; display: block; padding: 16px 16px 0 0; height: 0; top: 0.4em; left: 0.4em; }
form .required .label i.icon { margin: 0 0 0 5px; top: 0.5em; right: auto; }
form .required i.icon { background-position: 0 0; }
form .required-ok i.icon { background-position: 0 -16px; }
form .row .required_message { clear: left; position: absolute; z-index: 1; left: 100%; bottom: 0; width: 12em; margin: 0; padding: 0.25em 0.5em; background: #eeeecc; visibility: hidden; }
form.submitted .required .required_message { visibility: visible; }

/* common styles */
form .row .field:after,
form .selector:after { content: ''; height: 0; display: block; clear: both; }
form .for_input .label label,
form .for_textarea .label label,
form .for_select .label label { display: block; }
form .for_textarea .label { padding-top: 0; }
form .type_submit { margin-top: 2em; }
form .row .label.error { color: #e10015 !important; }
.error_message { position: relative; color: #cc0000; border: solid 1px #cc0000; padding: 7px 20px; margin: 0 0 20px 0; -moz-border-radius: 8px; -webkit-border-radius: 8px; }
.error_message i { display: inline; float: left; padding: 17px 16px 0 0; margin-right: 6px; background: url(/images/i-error.gif) no-repeat 0 50%; }
.error_message.time i { background-image: url(/images/i-time.gif); margin-top: 1px; }