form {  padding:0px;  margin:0px;}

form ul{
  margin:0;
  padding:0;
  list-style-type:none;
  width:100%;

}
form li{
  margin:0  !important;
  padding:4px 5px 2px 9px;
  position:relative;
  border:none !important;
  text-indent:0 !important; list-style:none !important;
}

form div.lidiv{
	padding:0px 0px 15px 0px !important;
}

form li:after, .buttons:after{
  content:"" !important; 
  font-size:1px;
  display:block;
  height:0; 
  clear:both;
  visibility:hidden;
}
form li:before, .buttons:before{
  content:"" !important; 
}


form li, .buttons{display: inline-block;}
* html form li, * html .buttons{height: 1%;}
form 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:.2em 0 1em 0;
  padding:0 0 0.5em 0;
  color:#444;
}
.info[class]{
  display:block;
}
.info h2{
  font-weight:normal;
  font-size:1.6em;
  line-height:1.2em !important;
  margin:0 0 .3em 0 !important; padding:0 !important;
  clear:left;
}
.info p{
  font-size:1em;
  line-height:1.3em !important;
  text-indent:0 !important;
  margin:0px 0px 0px 0px !important;
  padding-top:0px  !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:1em;
  padding:4px 0 2px 0;
  border:none;
  color:#555 !important;
  display:block;
  font-size:1em  !important;
  font-weight:bold;
  font-family:Arial, Helvetica, sans-serif;
}
form li div label, form li span label{
  margin:0;
  clear:both;
  font-size:.9em;
  line-height:.9em;
  color:#777;
  display:block;
}

input.text, input.file, textarea.textarea, select.select{
  margin:0;
  font-size:100%;
  color:#333;
}
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:1em;
  margin:-1.65em 0 0 25px;
  padding:.44em 0 .5em 0;
  color:#555; font-family:Arial, Helvetica, sans-serif;
  width:80%;
}
input.checkbox, input.radio{
  display:block;
  line-height:1.5em;
  margin:.6em 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:1em; font-family:Arial, Helvetica, sans-serif; font-weight:bold; margin-top:.3em; color:#999999;
  font-style:italic;
  line-height:1em;
}
form li .datepicker{
  float:left;
  margin:.1em 5px 0 0;
  padding:0;
  width: 16px;
  height: 16px;
}

/* ----- 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:5px 10px 6px 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;
}

input.btTxt{
  padding:0 7px;
  width:auto;
  overflow:visible;
}

/* ----- 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, .rtl input.btTxt{
  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; padding:0;
    }
#errorMsg ol li{
        margin:0; padding:2px;
        list-style-position:inside;
        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.smallhalf{
	width:44% !important;	
	height:100%;
	display:table-cell;
	vertical-align:middle;
}
form li.leftHalf, form li.rightHalf{
  width:48.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%;
}

.pic-preview{
	background-color:#fff; border:1px dotted #ccc; border-width: 1px 1px 1px 0;
	overflow:hidden; padding:0; margin:0;
	width:100%; height:175px;
	display:table-cell;
	vertical-align:middle;
}

.imagewrap{
	position:relative;
	left:50%;
	float:left;
}
.imagewrap img{	position:relative;	left:-45%;}

* html .imagewrap{top:50%;}
* html .imagewrap img{top:-50%;}

.pic-preview span{
	position:absolute;
	height:167px; width:16px; padding:5px;
	top:4px; display:block; background-color:#eee;
	left:8px;
}
.pic-preview span img{margin-bottom:3px;}

fieldset {border: 1px solid #999; margin: 0; padding: 4px; }
