/* Forms
----------------------------------------*/

form li{
	width:62%;
	list-style: none;
}
form ul{
	margin:0;
	padding:0;
	list-style-type:none;
	width:100%;
}
form li{
	display: block;
	margin:0;
	padding:4px 5px 2px 9px;
	clear:both;
}
form li:after{
	content:"."; 
	display:block;
	height:0; 
	clear:both; 
	visibility:hidden;
}
* html form li{height: 1%;}
* html form li div{display:inline-block;}
*+html form li div{display:inline-block;}

form li div, form li span{
	margin:0 4px 0 0;
	padding:0 0 8px 0;
}
form li span{
	float:left;
}

form li div.column{
	padding-bottom:0;
}
form li div span.left, form li div span.right{
	width:47%;
	margin:0;
}
form li div span.full input, 
form li div span.full select, 
form li div span.left input, 
form li div span.right input,
form li div span.left select,
form li div span.right select{
	width:100%;
}

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

.left {
    float: left;
}

.right {
    float: right;
}

.clear {
    clear: both !important;
}


/* ----- FORM INFO & SECTIONS ----- */

form hr{
	display:none;
}

.info{
	display:inline-block; 
	clear:both;
	border-bottom:1px dotted #ccc;
	margin:0 0 .75em 0;
}

.info[class]{
	display:block;
}

.info h3, form .section h3{
	font-weight:normal;
	font-size:1.5em;
	line-height:1.3em;
	margin:0 0 .2em 0;
}
.info div{
	font-size:1em;
	line-height:1.3em;
	margin:0 0 .75em 0;
}

form .section{
	border-top:1px dotted #ccc;
	padding: .75em 0 0 0;
	margin-top: 10px;
	width:97% !important;
	position:static;
}

form .section div{
	display:block;
	font-size:1em;
	margin:0 0 1.3em 0;
}

form ul li.first{
	border-top:none !important;
	margin-top:0px !important;
	padding-top:0px !important;
}

/* ----- LABELS ----- */

label.desc{
	line-height:150%;
	padding:0 0 1px 0;
	display:block;
	font-size: 1em;
	font-weight:bold;
}

form li div label, form li span label{
	margin:0;
	padding-top:6px;
	clear:both;
	font-size:.8em;
	line-height:9px;
	display:block;
}

label.choice{
	display:block;
	line-height:1.5em;
	margin:-1.65em 0 0 25px;
	padding:.44em 0 .5em 0;
	width:88%; 
	font-size:1em;
	display:block;
}

span.symbol{
	font-size:115%;
	line-height:130%;
}

/* ----- FIELDS ----- */

input.text, input.file, textarea.textarea, select.select{
	margin:0;
	padding: 2px;
}

input.text, textarea.textarea, .firefox 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.checkbox, input.radio{
	display:block;
	line-height:1.5em;
	margin:.6em 0 0 3px;
	width:13px;
	height:13px;
}
input.other{
	margin:0 0 0 25px;
}

select.select{
	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;
}

/* Buttons
----------------------------------------

input.btTxt{
	padding:0 7px;
	width:auto;
	overflow:visible;
}
.buttons{
	clear:both;
	margin-top:10px;
}
.buttons input{
	font-size:120%;
	margin-right: 5px;
}
*/

/* Text Direction
----------------------------------------*/

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

/* Input Sizes
----------------------------------------*/


.third{
	width:32% !important;
}
.half{
	width:48% !important;
}
.full{
	width:100% !important;
}

input.small, select.small{
	width:25%;
}
input.medium, select.medium{
	width:50%;
}
input.large, select.large, textarea.textarea{
	width:100%;
}

textarea.small{
	height:5.5em;
}
textarea.medium{
	height:10em;
}
textarea.large{
	height:20em;
}

/* Errors
----------------------------------------*/

#errorLi{
	width:99%;
	margin:0 auto;
	background:#fff;
	border:1px dotted red;
	margin-bottom:1em;
	text-align:center;
	padding-top:4px;
	padding-left:0px;
	padding-right:0px;
}
#errorMsgLbl{
	margin:7px 0 5px 0;
	padding:0;
	font-size:125%;
	color:#DF0000;
}
#errorMsg{
	margin:0 0 .8em 0;
	color:#000;
	font-size:100%;
}
#errorMsg strong{
	background-color: #FFDFDF;
	padding:2px 3px;
	color:red;
}
form li.error{
	display:block !important;
	border-bottom:1px solid #F9B9B2;
	border-right:1px solid #F9B9B2;
	background-color: #FFDFDF !important;
}
form li.error label{
	color:#DF0000 !important;
}
form p.error{
	display:none;
	color:red;
	font-weight:bold;
	font-size:10px;
	margin:-2px 0 5px 0;
	clear:both;
}
form li.error p.error{
	display:block;
}

form p.error{
	margin-left:30%;
	padding-left:15px;
}
form p.error{
	margin-left:35%;
	padding-left:15px;
}

/* Hints
----------------------------------------*/

form li div label.hint, li .hint, li.leftHalf .hint, li.rightHalf .hint{
	margin-top:-6px;
	margin-bottom:0px !important;
	width:100%;
	clear:left;
	font-size:.8em;
}

/* Labels
----------------------------------------*/

form li{
	width:74% !important;
	padding-top:9px;
}

form label.desc{
	float:left;
	width:29%;
	margin:2px 15px 0 0;
}
form label.desc{
	text-align:right;
}
form .column{
	float:left;
}

form .small{
	width:17%;
}

form .medium{
	width:35%;
}

form .large, form textarea.textarea, form .column{
	width:64%;
}

* html form .small{
	width:23%;
}
* html form .medium{
	width:55%;
}

* html form .large{
	width:95%;
}

* html .leftLabel textarea.textarea,
* html form textarea.textarea{
	width:97%;
}

form li .hint{
	margin-left:29% !important;
	padding-left:15px;
	width:65%;
}

form .buttons{
	margin-left:15px;
}

form .buttons input{
	margin-left:29%;
}

* html form .buttons input{
	margin-left:22%;
}

* html form .buttons{
	margin-left:4px;
}

*+html form .buttons{
	margin-left:7px;
}

/* Floats
----------------------------------------*/

form li.leftHalf, form li.rightHalf{
	width:46% !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%;
}

/* --- Form Buttons --- */

/* BUTTONS */

.buttons {
	float:left;
	padding-left:23%;
	margin-top: 10px;
}

.buttons a, .buttons button{
    display:block;
    float:left;
    margin:0 7px 0 0;
    background-color:#f5f5f5;
    border:1px solid #dedede;
    border-top:1px solid #eee;
    border-left:1px solid #eee;
    font-size:100%;
    line-height:130%;
    text-decoration:none;
    font-weight:bold;
    color:#565656;
    cursor:pointer;
    padding:5px 10px 6px 7px; /* Links */
}
.buttons button{
    width:auto;
    overflow:visible;
    padding:4px 10px 3px 7px; /* IE6 */
}
.buttons button[type]{
    padding:5px 10px 5px 7px; /* Firefox */
    line-height:15px; /* 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;
}

/* STANDARD */

button:hover, .buttons a:hover{
    background-color:#c4dcff;
    border:1px solid #6186bc;
    color:#6186bc;
}

/* POSITIVE */

button.positive, .buttons a.positive{
    color:#529214;
}

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

/* NEGATIVE */

.buttons a.negative, button.negative{
    color:#d12f19;
}
.buttons a.negative:hover,
button.negative:hover,
.buttons a.negative:focus,
button.negative:focus,
.buttons a.negative:active,
button.negative:active {
    background:#fbe3e4;
    border:1px solid #fbc2c4;
    color:#d12f19;
}

