
form {  padding:0px;  margin:0px; font-family:Arial, Helvetica, sans-serif !important;}

form ul{
  margin:0;
  padding:0;
  list-style-type:none !important;
  width:100%;
}
form li{
  margin:0;
  padding:4px 5px 2px 9px;
  position:relative;
/*  border:none !important; background-image:none !important;*/
  text-indent:0 !important; 
}
form li:after, .buttons:after{
  content:"" !important; 
  font-size:1px;
  display:block;
  height:0; 
  clear:both;
  visibility:hidden;
}
form ul li:before, .buttons:before{
  content:"" !important; 
}


form ul li, .buttons{display: inline-block;}
* html form ul li, * html .buttons{height: 1%;}
form ul li, .buttons{display: block;}

* html form li div{
  display:inline-block;
}
form li div, form li span{
  margin:0 4px 0 0;
  padding:0 0 8px 0;
  color:#444;
}
form li span{
  float:left;
}

form li div.address{
  padding-bottom:0;
}

form li div.left, .left{
  display:inline;
  float:left;
  width:47%;
}
form li div.right, .right{
  display:inline;
  float:right;
  width:47%;
}

.clear{
  clear:both !important;
}

/* ----- INFO ----- */

.info{
  display:inline-block; 
  clear:both;
  border-bottom:1px dotted #ccc;
  margin:.7em 0 1em 0;
  padding:0 0 0.5em 0;
  color:#444;
}
.info[class]{
  display:block;
}
.info h2{
  font-weight:normal;
  font-size:1.6em;
  margin:5px 0 5px 0;
  clear:left;
}
.info p{
  font-size:1em;
  line-height:1.1em !important;
  text-indent:0 !important;
  margin:0px 0px 0px 0px !important;
  padding-top:5px  !important;
}

/* ----- SECTIONS ----- */

form hr{
  display:none;
}
form li.section{
  border-top:1px dotted #ccc;
  margin-top:9px;
  padding-top:13px;
  padding-bottom:0px;
  padding-left:9px;
  width:97% !important;
}
form ul li.first{
  border-top:none !important;
  margin-top:0px !important;
  padding-top:0px !important;
}
form .section h3{
  font-weight:normal;
  font-size:1.10em;
  line-height:1.35em;
  margin:0 0 2px 0;
}
form .section p{
  font-size:0.85em;
  margin:0 0 10px 0;
}

/* ----- FIELDS AND LABELS ----- */

label.desc{
  line-height:1.5em;
  padding:0 0 1px 0;
  border:none;
  color:#222;
  display:block;
  font-size:.9em !important;
  font-weight:bold;
}
form li div label, form li span label{
  margin:0;
  padding-top:3px;
  clear:both;
  font-size:.8em;
  line-height:.8em;
  color:#444;
  display:block;
}

input.text, input.file, textarea.textarea, select.select{
  margin:0;
  font-size:100%;
  color:#333;
/*  background-color:#FFFFFF;*/
}
input.text, textarea.textarea, .firefox select.select, select.select{
  border-top:1px solid #7c7c7c;
  border-left:1px solid #c3c3c3;
  border-right:1px solid #c3c3c3;
  border-bottom:1px solid #ddd;
  background:#fff;
}
input.text, input.file{
  padding:2px 0 2px 0;
}

label.choice{
  font-size:100%;
  display:block;
  line-height:1.5em;
  margin:-1.65em 0 0 25px;
  padding:.44em 0 .5em 0;
  color:#222;
  width:80%;
}
input.checkbox, input.radio{
  display:block;
  line-height:1.5em;
  margin:.1em 0 0 3px;
  width:13px;
  height:13px;
}

textarea.textarea{
  font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
}
select.select{
  font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
  margin:1px 0;
  padding:1px 0 0 0;
}
select.select[class]{
  margin:0;
  padding:1px 0 1px 0;
}
*:first-child+html select.select[class]{
  margin:1px 0;
}
.safari select.select{
  margin-bottom:1px;
  font-size:120% !important;
}

span.symbol{
  font-size:115%;
  line-height:130%;
}
form li .datepicker{
  float:left;
  margin:.1em 5px 0 0;
  padding:0;
  width: 16px;
  height: 16px;
  /*cursor:pointer !important;*/
}

/* ----- BUTTONS ----- */

.buttons{
  clear:both;
  margin-top:10px;
}
.buttons input{
  font-size:1.2em;
  margin-right: 5px;
}

.buttons a, .buttons button{
    display:block;
    float:left;
    margin:0 7px 0 0;
    background-color:#f5f5f5;
    border:1px solid;
  border-color:#dedede #bfbfbf #dedede #bfbfbf;

    font-family:Arial, Helvetica, sans-serif;
    font-size:0.9em;
    line-height:1.3em;
    text-decoration:none;
    color:#565656 !important;
    cursor:pointer;
    padding:5px 10px 6px 7px; 

	
}

.buttons button{
    width:auto;
    overflow:visible;
    padding:4px 10px 3px 7px; /* IE6 */
}
.buttons button[type]{
    padding:5px 10px 5px 7px; /* Firefox */
    line-height:17px; /* Safari */
}
*:first-child+html button[type]{
    padding:4px 10px 3px 7px; /* IE7 */
}
.buttons button img, .buttons a img{
    margin:0 3px -3px 0 !important;
    padding:0;
    border:none;
    width:16px;
    height:16px;
}

button:hover, .buttons a:hover{
    background-color:#dff4ff;
    border:1px solid #c2e1ef;
	text-decoration:none;
	color:#FFFFCC;
}
.buttons a:active{
    background-color:#6299c5;
    border:1px solid #6299c5;
    color:#fff;
}

/* POSITIVE */

button.positive, .buttons a.positive{
    color:#529214;
}
.buttons a.positive:hover, button.positive:hover{
   background-color:#E6EFC2;
    border:1px solid #C6D880;
    color:#529214;
}
.buttons a.positive:active{
    background-color:#CDDF88;
    border:1px solid #529214;
    color:#fff !important;
}

/* NEGATIVE */

.buttons a.negative, button.negative{
    color:#d12f19;
}
.buttons a.negative:hover, button.negative:hover{
    background:#fbe3e4;
    border:1px solid #fbc2c4;
    color:#d12f19;
}
.buttons a.negative:active{
    background-color:#F4AAA0;
    border:1px solid #F4AAA0;
    color:#fff !important;
}


/* ----- TEXT DIRECTION ----- */

.rtl .info h2, .rtl .info p, .rtl label.desc, .rtl label.choice, 
.rtl div label, .rtl span label, .rtl input.text, 
.rtl textarea.textarea, .rtl select.select, .rtl p.instruct, 
.rtl .section h3, .rtl .section p{
  direction:rtl;
}

/* ----- SIZES ----- */


.third{
  width:30% !important;
}
.twothird{
  width:65% !important;

}
.half{
  width:48% !important;
}
.full{
  width:99% !important;
}
.small20{
  width:20% !important;
}
input.small, select.small{
  width:25% !important;
}
input.medium, select.medium{
  width:50% !important;
}
input.width90, select.width90{
  width:90% !important;
}

input.large, select.large, textarea.textarea{
  width:100%;
}

textarea.small{
  height:5.5em;
}
textarea.medium{
  height:10em;
  width:50% !important;
}
textarea.large{
  height:20em;
}


/* ----- ERRORS ----- */

#errorMsg{
  background:#ffdfdf;
  border:1px solid #df7d7d; border-width:1px 0;
  margin:1em 0 1em 0; padding:1em;
}

#errorMsg h2{  
  color:#CC0000;  
  font-weight:normal;
  font-size:1.6em;  
}
.error{
  background:#ffdfdf;
  border:1px solid #df7d7d; border-width:1px 0;
}
#errorMsg dt,
#errorMsg h2{
    margin:0 0 .5em 0;
  }
#errorMsg dd{
    margin:0; padding:0;
  }
#errorMsg ol{
      margin:0 0 0 2em; padding:0;
    }
#errorMsg ol li{
        margin:0; padding:2px;
        border-bottom:1px dotted #df7d7d;
        position:relative;
      }
.errorField{
      color:#af4c4c;
      margin:0 0 6px 0; padding:4px;
      background:#ffbfbf;
    }
/* ----- REQUIRED ----- */

form .req{
  float:none;
  color:red !important;
  font-weight:bold;
  margin:0;
}

/* ----- INSTRUCTIONS ----- */

form li.focused{
  background-color:#fff7c0;
}
form .instruct{
  position:absolute;
  top:0;
  left:100%;
  z-index:1000;
  width:42%;
  margin:0 0 0 8px;
  padding:8px 10px 9px 10px;
  border:1px solid #e6e6e6;
  background:#f5f5f5;
  line-height:130%;
  font-size:80%;
  color:#444;
  visibility:hidden;
}
form .instruct small{
  font-size:105%;
}
form li.focused .instruct, form li:hover .instruct{
  visibility:visible;
}

/* ----- ALT INSTRUCTIONS ----- */

li.altInstruct .instruct, li.leftHalf .instruct, li.rightHalf .instruct{
  visibility:visible;
  position:static;
  margin:-2px 0 0 0;
  padding:0 0 7px 0;
  background:none;
  border:none;
  width:100%;
  font-size:9px;
  clear:left;
}

/* ----- LABEL LAYOUT ----- */

.leftLabel li, .rightLabel li, li.leftLabel, li.rightLabel{
  width:74% !important;
  padding-top:9px;
}

.leftLabel .small, .rightLabel .small{
  width:17%;
}
.leftLabel .medium, .rightLabel .medium{
  width:35%;
}
.leftLabel .large, .leftLabel textarea.textarea,
.rightLabel .large, .rightLabel textarea.textarea,
.leftLabel .address, .rightLabel .address{
  width:64%;
}

* html .leftLabel .small, * html .rightLabel .small{
  width:23%;
}
* html .leftLabel .medium, * html .rightLabel .medium{
  width:55%;
}
* html .leftLabel .large, * html .leftLabel textarea.textarea,
* html .rightLabel .large, * html .rightLabel textarea.textarea{
  width:97%;
}

.leftLabel label.desc, .rightLabel label.desc{
  float:left;
  width:30%;
  margin:2px 15px 0 0;
}
.rightLabel label.desc{
  text-align:right;
}
.leftLabel .address, .rightLabel .address{
  float:left;
}

.leftLabel p.instruct, .rightLabel p.instruct{
  width:27%;
  margin-left:5px;
}
.leftLabel .altInstruct .instruct, .rightLabel .altInstruct .instruct{
  margin-left:30% !important;
  padding-left:15px;
  width:65%;
}

.leftLabel .buttons, .rightLabel .buttons{
  margin-left:15px;
}
.leftLabel .buttons input, .rightLabel .buttons input{
  margin-left:30%;
}

/* ----- NO INSTRUCTIONS ----- */

.noI .instruct{
  display:none !important;
}
.noI form li, .noI form li.buttons{
  width:97% !important;
}
.noI form li.section{
  padding-left:9px !important;
}

/* ----- NO INSTRUCTIONS LABEL LAYOUT ----- */

.noI .leftLabel .large, .noI .leftLabel textarea.textarea,
.noI .rightLabel .large, .noI .rightLabel textarea.textarea,
.noI .leftLabel .address, .noI .rightLabel .address{
  width:60%;
}

* html .noI .leftLabel .small, * html .noI .rightLabel .small{
  width:23%;
}
* html .noI .leftLabel .medium, * html .noI .rightLabel .medium{
  width:55%;
}
* html .noI .leftLabel .large, * html .noI .leftLabel textarea.textarea,
* html .noI .rightLabel .large, * html .noI .rightLabel textarea.textarea{
  width:97%;
}

.noI .leftLabel label.desc, .noI .rightLabel label.desc{
  width:35%;
}
.noI .leftLabel .buttons input, .noI .rightLabel .buttons input{
  margin-left:35%;
}

/* ----- FIELD FLOATING ----- */

form li.leftHalf, form li.rightHalf{
  width:47.00% !important;
}
li.leftHalf{
  clear:left;
  float:left;
}
li.rightHalf{
  clear:none;
  float:right;
}
li.leftHalf .medium, li.rightHalf .medium,
li.leftHalf .small, li.rightHalf .small{
  width:100%;
}