/*
*************************************************
andCulture Form Styles - Custom
Version:	0.40 | July 16, 2009
Author:		andCulture, info@andCulture.com
Notes:		Wherever you see "REQUIRED" it means that the property and
			value must exist (for layout purposes). You may adjust it's
			value. All other properties are optional.
*************************************************
*/


/*-------------------------------------------
	SHARED STYLES (BLOCK & INLINE LABELS)
-------------------------------------------*/

/* MULTIPLE FIELDS ON SAME LINE */
.ac-form fieldset.multi input,
.ac-form fieldset.multi select { margin: 0 5px 0 0; }

/* BUTTONS */
.ac-form div.buttons {
	font-size: 12px;
}

/* RADIO & CHECKBOX SETS */
fieldset.switches input {
	vertical-align: inherit;
}


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

/* LABELS */
.block-labels label,
.block-labels .label {
	margin: 5px 0 3px 0;
}

/* NOTES */
.block-labels p.note {
	margin: 0;
}

/* RADIO & CHECKBOX SETS */
fieldset.switches.block-labels label {
	margin: 0 0 5px 0;
}

/* INDENTED VERSION */
.block-labels div {
	margin-left: 125px;
}


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

/* LABELS */
.inline-labels label,
.inline-labels .label {
	margin-top: 5px;
	margin-right: 5px;
	width: 120px; /* REQUIRED */
}

/* SELECTS */
.inline-labels select {
	margin-top: 2px;
}

/* NOTES */
.inline-labels p.note {
	margin-left: 125px; /* REQUIRED */
	margin-top: .5em;
	margin-bottom: 0;
	line-height: 13px;
}

/* BUTTONS */
.inline-labels div.buttons {
	margin-left: 125px; /* REQUIRED */
}


/*-------------------------------------------
	INLINE LABELS (RIGHT ALIGNED)
-------------------------------------------*/

/* REQUIRED FIELDS */
.inline-labels.right div label,
.inline-labels.right div .label {
	padding-right: 5px;
	width: 115px; /* REQUIRED */
}
.inline-labels.right div em {
	top: 3px;
	left: 115px; /* REQUIRED */
}

/* LINE OF TEXT WITH A CHECKBOX */
.inline-labels div label.line {
	margin-left: 125px; /* REQUIRED */
}


/*-------------------------------------------
	FORM ELEMENTS
-------------------------------------------*/

.ac-form label, input {
	font-size: 12px;
	line-height: 12px;
}
.ac-form legend {
	margin: .5em 0;
	font-size: 12px;
	font-family: Helvetica, Arial, sans-serif;
	font-weight: bold;
	color: #4D8B9A;
}
.ac-form input[type=text] {
	padding: 3px;
	width: 200px;
}
.ac-form textarea {
	padding: 3px;
	width: 300px;
	height: 100px;
}
.ac-form input[required=required] {
	border: 1px solid red;
}
.ac-form select {
	width: 200px;
}


/*-------------------------------------------
	STATUS MESSAGES (loading, error, success)
-------------------------------------------*/

/* STATUS SUMMARY */
.ac-form  div.status {
	clear: both;
	margin-bottom: 1em;
	border-width: 1px;
	border-style: dashed;
	padding: 5px;
}
.ac-form  div.status.error {
	border-color: #c7491e;
	background-color: #ffe8e0;
}
.ac-form  div.status.success {
	border-color: #6ead1c;
	background-color: #f2ffe0;
}
.ac-form  div.status p {
	margin: 0;
}

/* INLINE ERRORS (INPUTS) */
.ac-form div.error > label,
.ac-form div.error .label {
	color: #F00;
}
.ac-form div.error input[type=text],
.ac-form div.error input[type=password],
.ac-form div.error input[type=file],
.ac-form div.error textarea,
.ac-form div.error select {
	border: 1px solid #F00;
}

/* INLINE ERRORS (ERROR MESSAGES) */
.ac-form p.status {
	margin-top: .5em;
	display: none;
}
.inline-labels p.status {
	margin-left: 125px; /* REQUIRED */
}
.ac-form p.error-msg {
	padding: 5px;
	border: 1px dashed #F00;
	background: #FEE;
}
.ac-form div.error p.error-msg {
	display: block;
}

	/* AJAX CLASSES */
	.ac-form div.loading p.loading-msg, 
	.ac-form div.success p.success-msg {
		display: block;
	}
	.ac-form div.loading p.loading-msg {
		/* REMEMBER TO STYLE WITH A BACKGROUND IMAGE LOADING SPINNER OF YOUR CHOICE! */
	}


/*-------------------------------------------
	VALIDATION PLUGIN STYLES
-------------------------------------------*/

.ac-form label.error {
	color: red;
	font-style: italic;
}
.inline-labels label.error {
	margin-left: 125px;
	width: auto !important;
	float: none !important;
	display: block;
}
.inline-labels div fieldset.switches label.error {
	display: none;
}


/*-------------------------------------------
	SITE SPECIFIC STYLING
-------------------------------------------*/

.ac-form p.form-note {
	color: #C30000;
	font-style: italic;
}

.ac-form fieldset > div {
	margin-bottom: 1em;
}
.ac-form input#city {
	width: 150px;
}
.ac-form select#state {
	width: 50px;
}
.ac-form input#zip {
	width: 40px;
}

/* BUTTONS */
.ac-form button {
	height: 24px;
}
.ac-form button.send {
	width: 44px;
	background-position: 0 -60px;
}

/* SmartStart Registration */
.smartstart-registration-form div.eligible {
	font-size: 10pt;
	font-weight: bold;
	color: #0F7253;
}
.smartstart-registration-form div.eligible label,
.smartstart-registration-form div.check label {
	width: auto;
	float: none;
}
.smartstart-registration-form div.check label label {
	font-size: 8.5pt;
}
.smartstart-registration-form div.check-dependent {
	padding-left: 60px;
}
.smartstart-registration-form div.check-dependent label {
	width: 140px;
}
.smartstart-registration-form div.check-dependent input {
	width: 100px;	
}
.smartstart-registration-form div.mi input {
	width: 20px;
}

/* SmartStart Application */
.smartstart-application-form div.mi input {
	width: 20px;
}
.smartstart-application-form div.date input {
	width: 100px;
}
.smartstart-application-form div.grid thead td {
	font-weight: bold;	
}
.smartstart-application-form div.topics,
.smartstart-application-form div.files label {
	font-size: 10pt;
	font-weight: bold;
	color: #0F7253;
	float: none;
}
.smartstart-application-form div.files input {
	width: 100%;
}
.smartstart-application-form div.files div {
	padding-top: 10px;
}


