/* - - - - - - - - - - - - - - - - - - - - -

Title : Wufoo Form Framework
Author : Infinity Box Inc.
URL : http://wufoo.com

Last Updated : July 2, 2009

- - - - - - - - - - - - - - - - - - - - - */

.wufoo{
	font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
}
.wufoo li{
	/*width:62%;*/
}
form ul{
	margin:0;
	padding:0;
	list-style-type:none;
	/*width:100%;*/
}
form li{
	display:block;
	margin:0;
	padding:6px 5px 9px 9px;
	clear:both;
}
form li:after, form li div: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 .3em 0 0;
	padding:0;
	color:#444;
}
form li span{
	float:left;
}

.center, 
form li span.center input.text, form li span.center label,
form li.name input.text, 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 div.col span{
	display:block;
	width:100%;
	float:left;
	padding:0;
}
li.twoColumns div.col span{
	width:48%;
	margin:0 5px 0 0;
}
li.threeColumns div.col span{
	width:30%;
	margin:0 5px 0 0;
}
li.notStacked div.col span{
	width:auto;
	margin:0 7px 0 0;
}


form li.complex{
	padding-bottom:0;
}
form li div span.left, form li div span.right{
	margin:0;
	width:47%;
}
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%;
}

.left{
	float:left;
}
.right{
	float:right;
}
.clear{
	clear:both !important;
}

/* ----- INFO ----- */

.info{
	display:inline-block; 
	clear:both;
	border-bottom:1px dotted #ccc;
	margin:0 0 5px 0;
}
.info[class]{
	display:block;
}
.info h2{
	font-weight:normal;
	font-size:160%;
	margin:0 0 .2em 0;
	clear:left;
}
.info div{
	font-size:95%;
	line-height:135%;
	margin:0 0 1.1em 0;
	color:#555;
}

/* ----- SECTIONS ----- */

form li.section, form li.captcha{
	clear:both;
	border-top:1px dotted #ccc;
	padding-top:.9em;
	padding-bottom:0px;
	/*width:97% !important;
	position:static;*/
}
form ul li.first{
	border-top:none !important;
	margin-top:0px !important;
}
form .section h4{
	font-weight:normal;
	font-size:110%;
	line-height:135%;
	margin:0 0 .2em 0;
}
form .section div{
	display:block;
	font-size:85%;
	margin:0 0 1.2em 0;
	padding:0;
}

form li.captcha {
	margin-top:5px;
	padding-bottom:9px;
}
form li.captcha label.desc{
	margin-bottom:4px;
}

#recaptcha_widget_div table{
	background:#fff;
}

form li.captcha .noscript iframe{
	border:none;
	overflow:hidden;
	margin:0;
	padding:0;
}
form li.captcha .noscript label.desc{
	display:block !important;
}
form li.captcha .noscript textarea{
	margin-left:12px;
}

/* ----- LABELS ----- */

form li div label, form li span label{
	margin:0;
	padding-top:6px;
	clear:both;
	font-size:85%;
	line-height:10px;
	color:#444;
	display:block;
}
form li div span label{
	padding-bottom:12px;
}
label.desc{
	font-size:95%;
	font-weight:bold;
	color:#222;
	line-height:150%;
	margin:0;
	padding:0 0 3px 0;
	border:none;
	display:block;
}
label.choice{
	display:block;
	font-size:100%;
	line-height:150%;
	margin:-17px 0 0 23px;
	padding:0 0 5px 0;
	color:#222;
	width:88%;
}
.safari label.choice{
	margin-top:-16px;
}
form.rightLabel div.col{
	margin-top:-3px;
}

span.symbol{
	font-size:120%;
	line-height:135%;
}
form li .datepicker{
	float:left;
	margin:.19em 5px 0 0;
	padding:0;
	width: 16px;
	height: 16px;
	cursor:pointer !important;
}

/* ----- MIN/MAX COUNT ----- */

form li div label var{
	font-weight:bold;
	font-style:normal;
}
form li div label .currently{
	display:none;
}

/* ----- FIELDS ----- */

input.text, input.search, input.file, textarea.textarea, select.select{
	font-family:"Lucida Grande", Tahoma, Arial, sans-serif;
	font-size:100%;
	color:#333;
	margin:0;
	padding:2px 0;
}
input.text, input.search, textarea.textarea{
	border-top:1px solid #7c7c7c;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-bottom:1px solid #ddd;
	background:#fff url(/images/fieldbg.gif) repeat-x top;
}
select.select{
	padding:1px 0;
}
input.search{
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	padding-left:6px;
}
input.checkbox, input.radio{
	display:block;
	margin:4px 0 0 0;
	padding:0;
	width:13px;
	height:13px;
}
input.other{
	margin:0 0 8px 25px;
}
 
.safari select.select{
	font-size:120% !important;
	margin:0 0 1px 0;
}
* html select.select{
	margin:1px 0;
}
*+html select.select{
	margin:1px 0;
	border:1px solid red;
}

/* ----- BUTTONS ----- */

input.btTxt{
	padding:0 7px;
	width:auto;
	overflow:visible;
}
form li.buttons{
	clear:both;
	padding-top:10px;
}
form li.buttons input{
	font-size:12px;
	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.instruct, 
.rtl .section h3, .rtl .section div, .rtl input.btTxt{
	direction:rtl;
}

/* ----- 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 !important;
	border:1px solid red;
	margin-bottom:1em;
	text-align:center;
	padding:1em 0 1em 0;
	-webkit-border-radius:20px;
	-moz-border-radius:20px;
}
#errorMsgLbl{
	margin:0 0 5px 0;
	padding:0;
	font-size:125%;
	color:#DF0000 !important;
}
#errorMsg{
	margin:0 0 2px 0;
	color:#000 !important;
	font-size:100%;
}
#errorMsg strong{
	padding:2px 3px;
	background-color: #FFDFDF !important;
	color:red !important;
}
form li.error{
	display:block !important;
	background-color: #FFDFDF !important;
	margin-bottom:3px !important;
}
form li.error label, form li.error span.symbol{
	color:#DF0000 !important;
}
form p.error{
	display:none;
	margin:0 !important;
	padding:7px 0 0 0 !important;
	color:#DF0000 !important;
	font-weight:bold;
	font-size:10px;
	line-height:10px !important;
	clear:both;
}
form li.complex p.error{
	padding:0 0 9px 0 !important;
}
form li.error p.error{
	display:block;
}
.leftLabel p.error, .rightLabel p.error{
	margin-left:30%;
	padding-left:15px;
}
.noI .leftLabel p.error, .noI .rightLabel p.error{
	margin-left:35%;
	padding-left:15px;
}

/* ----- REQUIRED ----- */

form span.req{
	display:inline;
	float:none;
	color:red !important;
	font-weight:bold;
	margin:0;
	padding:0;
}

/* ----- INSTRUCTIONS ----- */

form li.focused{
	background-color:#fff7c0;
}
form li.focused, form li:hover{
	position:relative; /* Makes Instructs z-index stay on top in IE. */
}
form .instruct{
	position:absolute;
	top:0;
	left:0;
	z-index:1000;
	width:42%;
	margin:0 0 0 8px;
	padding:8px 10px 10px 10px;
	border:1px solid #e6e6e6;
	background:#f5f5f5;
	visibility:hidden;
	font-size:105%;
}
form .instruct small{
	line-height:120%;
	font-size:80%;
	color:#444;
}
form li.focused .instruct, form li:hover .instruct{
	left:100%; /* Prevent scrollbars for IE Instruct fix */
	visibility:visible;
}

/* ----- ADVANCED CLASSNAMES ----- */

.hideSeconds .seconds, .hideAMPM .ampm{
	display:none;
}

/* ----- ALT INSTRUCTIONS ----- */

.altInstruct .instruct, li.leftHalf .instruct, li.rightHalf .instruct{
	visibility:visible;
	position:static;
	margin:0;
	padding:6px 0 0 0;
	width:100%;
	clear:left;
	background:none;
	border:none;
}
li.altInstruct p.complex , li.leftHalf p.complex, li.rightHalf p.complex{
	padding:0 0 9px 0;
}

/* ----- LABEL LAYOUT ----- */

.leftLabel li{
	/*width:74% !important;*/
	padding-top:9px;
}


.leftLabel label.desc, .rightLabel label.desc{
	float:left;
	width:29%;
	margin:0px 15px 0 0;
}
.rightLabel label.desc{
	text-align:right;
}
.leftLabel li div.col, .rightLabel li div.col,
.leftLabel li.complex div, .rightLabel li.complex div{
	float:left;
}


.leftLabel .small, .rightLabel .small{
	width:17%;
}
.leftLabel .medium, .rightLabel .medium{
	width:35%;
}
.leftLabel .large, .leftLabel textarea.textarea,
.rightLabel .large, .rightLabel textarea.textarea,
.leftLabel li div.col, .rightLabel li div.col,
.leftLabel li.complex div, .rightLabel li.complex div{
	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 p.instruct, .rightLabel p.instruct{
	width:27%;
	margin-left:5px;
}
.leftLabel .altInstruct .instruct, .rightLabel .altInstruct .instruct{
	margin-left:29% !important;
	padding-left:15px;
	width:65%;
}


.leftLabel .buttons, .rightLabel .buttons{
	margin-left:15px;
}
* html .leftLabel .buttons, * html .rightLabel .buttons{
	margin-left:4px;
}
*+html .leftLabel .buttons, *+html .rightLabel .buttons{
	margin-left:7px;
}
.leftLabel .buttons .submit, .rightLabel .buttons .submit{
	margin-left:29%;
}
* html .leftLabel .buttons .submit, * html .rightLabel .buttons .submit{
	margin-left:22%;
}

/* ----- NO INSTRUCTIONS ----- */

.noI .instruct{
	display:none !important;
}
.noI form li, .noI form li.buttons, .altInstruct form li, .altInstruct form li.buttons{
	width:97% !important;
}
.noI form li.section, .altInstruct form li.section{
	padding-left:9px !important;
}

/* ----- NO INSTRUCTIONS LABEL LAYOUT ----- */

.noI .leftLabel label.desc, .noI .rightLabel label.desc{
	width:34%;
}
.noI .leftLabel .large, .noI .leftLabel textarea.textarea,
.noI .rightLabel .large, .noI .rightLabel textarea.textarea,
.noI .leftLabel li div.col, .noI .rightLabel li div.col,
.noI .leftLabel li.complex div, .noI .rightLabel li.complex div{
	width:60%;
}

.noI .leftLabel .buttons input, .noI .rightLabel .buttons input{
	margin-left:34%;
}

/* ----- FIELD FLOATING ----- */

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%;
}

/*** Calendar **********************/
div.calendar { position: relative; }

.calendar table {
cursor:pointer;
border:1px solid #ccc;
font-size: 11px;
color: #000;
background: #fff;
font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
}

.calendar .button { 
text-align: center;    
padding: 2px;          
}

.calendar .nav {
background:#f5f5f5;
}

.calendar thead .title { 
font-weight: bold;      
text-align: center;
background: #dedede;
color: #000;
padding: 2px 0 3px 0;
}

.calendar thead .headrow { 
background: #f5f5f5;
color: #444;
font-weight:bold;
}

.calendar thead .daynames { 
background: #fff;
color:#333;
font-weight:bold;
}

.calendar thead .name { 
border-bottom: 1px dotted #ccc;
padding: 2px;
text-align: center;
color: #000;
}

.calendar thead .weekend { 
color: #666;
}

.calendar thead .hilite { 
background-color: #444;
color: #fff;
padding: 1px;
}

.calendar thead .active { 
background-color: #d12f19;
color:#fff;
padding: 2px 0px 0px 2px;
}


.calendar tbody .day { 
width:1.8em;
color: #222;
text-align: right;
padding: 2px 2px 2px 2px;
}
.calendar tbody .day.othermonth {
font-size: 80%;
color: #bbb;
}
.calendar tbody .day.othermonth.oweekend {
color: #fbb;
}

.calendar table .wn {
padding: 2px 2px 2px 2px;
border-right: 1px solid #000;
background: #666;
}

.calendar tbody .rowhilite td {
background: #FFF1AF;
}

.calendar tbody .rowhilite td.wn {
background: #FFF1AF;
}

.calendar tbody td.hilite { 
padding: 1px 1px 1px 1px;
background:#444 !important;
color:#fff !important;
}

.calendar tbody td.active { 
color:#fff;
background: #529214 !important;
padding: 2px 2px 0px 2px;
}

.calendar tbody td.selected { 
font-weight: bold;
border: 1px solid #888;
padding: 1px 1px 1px 1px;
background: #f5f5f5 !important;
color: #222 !important;
}

.calendar tbody td.weekend { 
color: #666;
}

.calendar tbody td.today { 
font-weight: bold;
color: #529214;
background:#D9EFC2;
}

.calendar tbody .disabled { color: #999; }

.calendar tbody .emptycell { 
visibility: hidden;
}

.calendar tbody .emptyrow { 
display: none;
}

.calendar tfoot .footrow { 
text-align: center;
background: #556;
color: #fff;
}

.calendar tfoot .ttip { 
background: #222;
color: #fff;
font-size:10px;
border-top: 1px solid #dedede;
padding: 3px;
}

.calendar tfoot .hilite { 
background: #aaf;
border: 1px solid #04f;
color: #000;
padding: 1px;
}

.calendar tfoot .active { 
background: #77c;
padding: 2px 0px 0px 2px;
}

.calendar .combo {
position: absolute;
display: none;
top: 0px;
left: 0px;
width: 4em;
border: 1px solid #ccc;
background: #f5f5f5;
color: #222;
font-size: 90%;
z-index: 100;
}

.calendar .combo .label,
.calendar .combo .label-IEfix {
text-align: center;
padding: 1px;
}

.calendar .combo .label-IEfix {
width: 4em;
}

.calendar .combo .hilite {
background: #444;
color:#fff;
}

.calendar .combo .active {
border-top: 1px solid #999;
border-bottom: 1px solid #999;
background: #dedede;
font-weight: bold;
}

