input.textfield { position:absolute; padding:2px 0; left:0px; top:20px; font:12px Verdana, Arial, Helvetica, sans-serif; border:1px solid #444; background-color:#eaeaea; color:#333; width:278px; }
textarea.textareafield, select.selectfield { position:absolute; padding:2px 0; left:0px; top:20px; font:12px Verdana, Arial, Helvetica, sans-serif; border:1px solid #444; background-color:#eaeaea; color:#333; width:278px; overflow:auto; /* non va bene per input. */ }
input.radiofield, input.checkfield { position:absolute; padding:2px 0; left:0px; top:20px; font:12px Verdana, Arial, Helvetica, sans-serif; border:none; width:1.2em; height:1.2em; vertical-align:middle; background-color:#fff; color:#333; } 

input.textfield:hover, input.textfield:focus, textarea.textareafield:hover, textarea.textareafield:focus, select.selectfield:hover, select.selectfield:focus
{ border:1px solid #666; background-color:#fff; color:#000;  }

input.textfield_err, textarea.textareafield_err, select.selectfield_err { border:1px solid #ff0000; background-color:#eaeaea; color:#000; }
input.radiofield_err, input.checkfield_err { border: 1px solid #ff0000; background-color:#fff; color:#000; } 

input.butt_submit { position:absolute; top:0; right:0; width:80px; height:20px; background-color:#c1d000; color:#000; border:none; }
input.image_submit { position:absolute; top:15px; right:20px; }
input.image_account_submit { position:absolute; top:0px; right:0px; }

input.hidden_submit { position:absolute; visibility:visible; height:0; width:0; border:none; left:-2000px;  }


label.default { position:absolute; left:0; top:auto; width:auto; color:#333; cursor:pointer; }
label.radio_value { position:absolute; top:22px; cursor:pointer; }
#fm_job label { display:block; color:#e00025; padding-bottom:5px;  }

label.hidden, legend, ul.empty_required { display:none; }

ul.errorlist { padding-left:15px; margin:0; }

ul.errorlist li.errorlist_item { padding:0; list-style-position:outside; color:#ff0000; background-color:inherit; list-style-type:disc; }

form#fm_contatti {  }

div.fm_output_messages { display:none; margin:10px 0 10px 0; }

div.form_row { position:relative; height:3.5em; padding-bottom:10px; }

div.form_confirm { position:absolute; top:15px; right:20px; }
img#butt_no_filter { position:absolute; top:auto; right:10px; }

div.link_privacy { position:absolute; top:0; left:100px; /*width:120px;*/ width:auto; }

div.form_group { margin:15px 0; padding-bottom:3px; border-bottom:1px solid #ffb4a5; color:#e00025; }
div.form_group h2 { font-weight:bold; }

form { padding:0; margin:0; }
fieldset { border:none; padding:0; margin:0; }
optgroup { font-style:normal; color:#fff; background-color:inherit; }


div.fm_cv_col { float:left; width:290px; }

.asterisco { color:#ff0000; background-color:inherit; font-weight:normal; padding-left:5px; font-size:9px; }

table.tbform { width:580px; margin:0; table-layout:fixed; border:none; }
table.tbform tr { background-color: #fff; }
table.tbform tr.alternato { background-color: #f1f1f1; }
table.tbform th { padding:5px; text-align:center; background-color:#ccc; color:#333; border-right:1px solid #fff; font-weight:normal; font-size:100%; }
table.tbform td { padding:5px; text-align:left; font-weight:normal; font-size:90%; vertical-align:top; }
table.tbform th.small, td.small { font-size:90%; }
table.tbform div.cell { position:relative; height:25px; }
table.tbform input.textfield { width:99%; top:0; }
table.tbform input.radiofield { top:0; }
table.tbform label.radio_value { top:2px; }
table.tbform td.small input.textfield { font-size:90%; }
