/* @group forms */
/* FORMS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  */
form.form {
	font-family: "Lucida Grande", "Lucida Sans Console", Arial, Tahoma, Verdana;
}

form ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

* html form ul {
	width: 99%;
}

form li {
	clear: both;
	list-style: none;
	margin: 0;
	padding: 6px 1% 9px;
}

form li:after,
form li div:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}

* html form li {
	height: 1%;
	margin-bottom: -3px;
}

* + html form li {
	height: 1%;
	margin-bottom: -3px;
}

* html form li div {
	display: inline-block;
}

* + html form li div {
	display: inline-block;
}

form li div {
	color: #444;
	margin: 0;
	padding: 0;
}

form li span {
	color: #444;
	float: left;
	margin: 0 0.3em 0 0;
	padding: 0;
}

form li.payment span {
	margin-bottom: 10px;
}

form li div span {
	display: block;
	float: left;
	margin: 0;
	width: 100%;
}

form li.complex {
	padding-bottom: 0;
}

form li.complex div span {
	margin: 0 0.3em 0 0;
	padding-bottom: 12px;
	width: auto;
}

form li.complex div span.full {
	margin: 0;
}

form li.complex div span.left,
form li.complex div span.right {
	margin: 0;
	width: 48%;
}

form li.complex div span.full input, 
form li.complex div span.full select, 
form li.complex div span.left input, 
form li.complex div span.right input, 
form li.complex div span.left select, 
form li.complex div span.right select {
	width: 100%;
}

form li div label,
form li span label {
	clear: both;
	color: #444;
	display: block;
	font-size: 95%;
	line-height: 160%;
	margin: 0;
	padding-top: 3px;
}

label.desc {
	border: medium none;
	color: #222;
	display: block;
	font-size: 95%;
	font-weight: bold;
	line-height: 150%;
	margin: 0;
	padding: 0 0 3px;
}

label.choice {
	color: #222;
	display: block;
	font-size: 100%;
	line-height: 150%;
	margin: -17px 0 0 23px;
	padding: 0 0 5px;
	width: 88%;
}

.safari label.choice {
	margin-top: -16px;
}

span.symbol {
	font-size: 120%;
	line-height: 135%;
}

form li .datepicker {
	cursor: pointer !important;
	float: left;
	height: 16px;
	margin: 0.19em 5px 0 0;
	padding: 0;
	width: 16px;
}

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

form li div label var {
	font-style: normal;
	font-weight: bold;
}

form li div label .currently {
	display: none;
}

input.text, 
input.search, 
input.file, 
textarea.textarea, 
select.select {
	color: #333;
	font: 100% "Lucida Grande","Lucida Sans Unicode",Arial,Tahoma,Verdana,sans-serif;
	margin: 0;
	padding: 3px 0;
}

input.text, 
input.search, 
textarea.textarea {
	background: #fff url("../img/fieldbg.gif") repeat-x center top;
	border-color: #7c7c7c #c3c3c3 #dddddd;
	border-style: solid;
	border-width: 1px;
}

select.select {
	padding: 1px 0 0;
}

input.search {
	-moz-border-radius-bottomleft: 10px;
	-moz-border-radius-bottomright: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
	padding-left: 6px;
}

input.checkbox,
input.radio {
	display: block;
	height: 13px;
	margin: 4px 0 0;
	padding: 0;
	width: 13px;
}

input.other {
	margin: 0 0 8px 25px;
}

input.checkbox.inline {
	display: inline;
}

.sarafi select.select {
	font-size: 120% !important;
	margin: 0 0 1px;
}

* html select.select {
	margin: 1px 0;
}

* + html select.select {
	margin: 1px 0;
}

.center, 
form li span.center input.text, 
form li span.center label, 
form li.name span label, 
form li.date input.text, 
form li.date span label, 
form li.phone input.text, 
form li.phone span label, 
form li.time input.text, 
form li.time span label {
	text-align: center;
}

form li.time select.select {
	margin-left: 5px;
}

form li.price .right {
	text-align: right;
}

.third {
	width: 32% !important;
}

.half {
	width: 48% !important;
}

.full {
	width: 100% !important;
}

input.tiny,
select.tiny {
	width: 12%;
	padding: 3px;
}

input.small,
select.small {
	width: 25%;
}

input.medium,
select.medium {
	width: 50%;
}

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

.msie select.ieSelectFix {
	width: auto;
}

.msie6 select.ieSelectFix,
.msie7 select.ieSelectFix {
	width: 100%;
}

.msie select.ieSelectFix.small {
	min-width: 25%;
}

.msie select.ieSelectFix.medium {
	min-width: 50%;
}

.msie select.ieSelectFix.large {
	width: 100%;
}

textarea.small {
	height: 5.5em;
}

textarea.medium {
	height: 10em;
}

textarea.large {
	height: 20em;
}

form li.buttons {
	clear: both;
	padding: 10px 1%;
	position: relative;
	width: auto !important;
}

form li.buttons input {
	font-size: 100%;
	margin-right: 5px;
}

input.btTxt {
	overflow: visible;
	padding: 0 7px;
	width: auto;
}

.safari input.btTxt {
	font-size: 120%;
}

.buttons .marker {
	color: #000;
	padding: 15px 10px 0 0;
	position: absolute;
	right: 0;
	top: 0;
	width: auto;
}

button.link {
	background: transparent;
	border: medium none;
	color: blue;
	cursor: pointer;
	display: inline-block;
	font-size: 100%;
	padding: 0;
	text-decoration: underline;
}

button.link:hover {
	color: green;
}

form li.focused {
	position: relative;
}

form .instruct {
	background: #f5f5f5;
	border: 1px solid #e6e6e6;
	font-size: 105%;
	left: 0;
	margin: 0 0 0 8px;
	padding: 8px 10px 10px;
	position: absolute;
	top: 0;
	visibility: hidden;
	width: 45%;
	z-index: 1000;
}

form .instruct small {
	color: #444;
	font-size: 80%;
	line-height: 120%;
}

form li.focused .instruct,
form li:hover .instruct {
	left: 100%;
	visibility: visible;
}

form li.section {
	clear: both;
	margin: 0;
	padding: 7px 0 0;
	position: static;
	width: auto !important;
}

form li.section h3 {
	border-top: 1px solid #d5d5d5;
	font-size: 110%;
	font-weight: normal;
	line-height: 135%;
	margin: 0 0 3px;
	padding: 12px 1% 0;
	width: auto;
}

form li.first {
	padding: 0;
}

form li.first h3 {
	border-bottom: medium none !important;
	padding: 8px 1% 0;
}

form li.section div {
	display: block;
	font-size: 85%;
	line-height: 160%;
	margin: 0 0 1em;
	padding: 0 1%;
	width: auto;
}

form li.error {
	background-color: #ffdfdf !important;
	display: block !important;
	margin-bottom: 3px !important;
	
}

form li label.error,
form li input.error {
	color: #df0000 !important;
	font-weight: bold !important;
}

form li input.error {
	background: #fff;
	border: 2px solid #df0000 !important;
}

form li.error label, 
form li.error span.symbol {
	color: #000 !important;
}

form li.error label.desc {
	color: #df0000 !important;
}

form p.error {
	clear: both;
	color: #df0000 !important;
	display: none;
	font-size: 11px;
	font-weight: bold;
	line-height: 10px !important;
	margin: 0 !important;
	padding: 7px 0 0 !important;
}

form li.error p.error {
	display: block;
}

form li.complex p.error {
	padding: 0 0 9px !important;
}
/* @end */