/* ----------------------------------------------------------------------
	COMMON FORM
	Generalised layout for form elements
	---------------------------------------------------------------------- */
/* General stuffies */	
input.option,
input.optionFirst,
input.tiny,
input.small,
input.narrow,
input.medium,
input.wide,
select.small,
select.narrow,
select.medium,
select.wide,
select.inline {
	_margin-top:1.4em;
	float:left;
}
/* Common input & select widths */
input.tiny {
	width:2em;
}
input.small,
select.small {
	width:10%;
	margin-right:55%;
}
input.narrow,
select.narrow {
	width:20%;
	margin-right:45%;
}
input.medium,
select.medium {
	width:35%;
	margin-right:30%;
}
input.wide,
select.wide {
	width:50%;
	margin-right:20%;	
}

/* Text areas */
textarea.medium, 
textarea.wide, 
textarea.full {
	height:10em;
	font-size:inherit;
	font-family:inherit;
}
textarea.full {
	width:95%;
}

textarea.medium {
	width:35%;
}

textarea.wide {
	width:50%;
}


/* Base label style */
label {
	width:24%;

	margin-right:1% !important;
	float:left;
	clear:left;
}
/* Radio and Checkboxes */
input.option {
	margin-right:68%;
}
input.optionFirst {
	margin-left:25%;
	/* Hack to correct IE's Shit boxmodel */
	_margin-left:23.5%;
}
/* Option groups
Class can apply to any element, just selects
child radio/checkboxes and positions them nice.
The parent element should only wrap the options. */
.optionGroup input.option {
	margin-right:0;
}
.optionGroup label {
	clear:none;
}
/* Groups */
form .group {
	float:left;
	clear:both;
}
form .group label,
form .group input,
form .group select {
	width:auto;
	clear:none;
}
/* Block group */
form .blockGroup {
	width:100%;
	clear:both;
	float:left;
}
/* inline Group */
form .inlineGroup {
	
}

form .note {
	clear:both;
	font-size:0.9em;
	padding-top:2em;
}
/* Fieldset needs to float to 
respect margins on floated children */
fieldset {
	float:left;
	border:0;
}
/* Inline labels, inputs and selects */
label.inline {
	width:auto;
	clear:none;
	margin-left:0.5em !important;
	margin-right:0.5em !important;
}
input.inline,
select.inline {
	margin-right:0;
	clear:none;
}

/* ----------------------------------------------------------------------
	CUSTOM FORM
	Customisations for this particular set of forms.
	---------------------------------------------------------------------- */
/* Buttons */
button {
	font-weight:bold;
	color:#ffffff;
	border:2px solid #614331;
	background-image:url(../images/form_button_bkg.gif);
	background-position:top left;
	background-repeat:repeat-x;
	background-color:#693F2C;
	margin-bottom:0.8em;
	/* IE Specific padding etc */
	padding:0.3em 0.3em;
}
button * {
	padding:0;
	margin:0;
}
/* This is a hack to get around IE 
stupidly mis-sizing buttons */
html>body button {
	padding:0.3em 0.4em;
}
button.tiny {
	float:right;
	margin-top:0;
}
input,
textarea,
label,
select,
button {
	margin-top:1.2em;
}
select {
	border:1px solid #999999;
}
input.tiny,
input.small,
input.narrow,
input.medium,
input.wide,
textarea{
	background-color:#ffffff;
	border:1px solid #999999;
	padding:0.2em;
	background-image:url(../images/form_input_bkg.gif);
	font-family:'Lucida Sans', Verdana, Helvetica, Arial, sans-serif;
}
label {
	/* Don't pad the right side of the label! */
	padding:0.3em 0 0.4em 0;
	font-weight:bold;
	text-align:right;
}
/* label flavours: */

label.wide {
	width:28%;
	_width:32%;
}
select {
	margin-top:1.4em;
}
.option,
.optionFirst {
	margin-top:1.7em;
	_margin-top:1.5em;
}
fieldset {
	border-top:1px solid #999999;
	margin-bottom:1.2em;
	/* Background */
	background-image:url(../images/form_block_bkg.gif);
	background-repeat:repeat-x;
	background-position:left bottom;
}
fieldset fieldset,
form .group {
	margin-top:1.2em;
	margin-bottom:0;
	background-image:none;
}
fieldset,
form .group {
	padding-bottom:1.2em;
	width:96%;
	padding-left:2%;
	padding-right:2%;
}
legend {
	font-size:1.5em;
	color:#555555;
	font-family:Georgia, serif;
	font-weight:normal;
}
fieldset fieldset legend {
	font-size:1.2em;
}
form .group {
	background-color:#eeeeee;
	border:1px solid #cccccc;
}
.optionGroup {
	padding-bottom:0.8em;
}
.optionGroup input.option,
.optionGroup label  {
	margin-top:0.8em;
	padding-top:0;
}

form .switchGroup p {
	clear:both;
	margin-left:25%;
}
form .switchGroup {
	border-top:1px solid #999999;
	margin-top:1.5em;
	float:left;
	width:100%;
}


/* CAPTCHA styles: */

img.captchaPhrase {
	border:1px solid #DDDDDD;
	padding:1em;
}


/* Hover/focus styles:*/

/*	----------------------------------------------------------------------
	INLINE CART WIDGETS
	Teeny forms for inside tables:
	---------------------------------------------------------------------- */
	td.cartColumn {
		width:8em;
		_width:8.5em;
	}
	td button.cartAdd {
		font-weight:bold;
		width:3.5em;
		height:2em;
		padding:0;
		margin:0.1em;
		background-image:none;
		float:right;
	}
	td input.small{
		width:2em;
		height:2em;
		padding:0.25em;
		margin:0.1em;
		float:left;
	}

/* ----------------------------------------------------------------------
	Quick product filter search box:
	---------------------------------------------------------------------- */

	.quickFilter {
		font-size:0.9em;
		clear:both;
		width:44em;
		_width:43em;
		padding:0 1em 1em 1em;
		margin:1em 0 1em 1em;
		background:url(../ui/bkg_quickFilter.gif) repeat-x bottom left #FDFEA5;
	}
	
	.quickFilter label{
		width:auto;
		padding-right:1em;
		font-size:1.2em;
	}
	.quickFilter input{
		font-size:1.5em;
		width:12em;
		margin-top:0.7em;
		padding:0.25em;
		letter-spacing:0;
	}
/*	----------------------------------------------------------------------
	FEEDBACK FORMS
	Food club survey layouts
	---------------------------------------------------------------------- */

#formSurvey #pageTitle #titleText,
#press #pageTitle #titleText {
	padding:1em 0 0 2em;
	float:left;
	width:60em;
}

#formSurvey {
	width:39em;
}

#formSurvey legend{
	margin-bottom:0.5em;
}

#formSurvey fieldset p {
	margin:1.5em 0 0 0;
	width:38em!important;
	clear:both;
	float:left;
}

#formSurvey .formColumn {
	width:17.5em;
	float:left;
}

#formSurvey .formColumn label{
	width:16em;
	color:#666666;
}
#formSurvey .formColumn label,
#formSurvey .formColumn input {
	margin-top:0;
}

#formSurvey label {
	text-align:left;
}
#formSurvey .checkboxGroup {
	font-weight:normal;
	width:38em !important;
	padding:0;
	margin:0;
}
#formSurvey .checkboxGroup input,
#formSurvey .formColumn input {
	width:2em;
}

#formSurvey label.full {
	width:100%;
	clear:both;
}
#formSurvey textarea.wide {
	width:95%;
	height:10em;
}
#formSurvey .lonely {
	margin-top:0;
}
#formSurvey select {
	margin-right:0.8em;
}
#formSurvey select.medium {
	width:15em;
	margin-right:23em;
}

#orderDelivery textarea.full {
	margin-top:0;
	height:5em;
	clear: both;
}
#orderDelivery label.full {
    width:100%;
    text-align:left;
}

/* ----------------------------------------------------------------------
	ERROR DISPLAY
	Simple little DIV that we are using to display some inline errors.
	---------------------------------------------------------------------- */
.error {
	z-index:6;
	line-height:1em;
	position:absolute;
	background-color:#660000;
	padding:0.5em 0.7em;
	width:12em;
	font-family:Verdana, Helvetica, Arial, sans-serif;
	border:1px solid #330000;
}

/* Server side validation style */

.formValidation {
	background-color:#FFFAA8;
	background-image:url(../images/icon_error.gif);
	background-repeat:no-repeat;
	background-position:16px 16px;
	padding:10px 4px 0px 64px;
	border:1px solid #F7DC7B;
	margin-bottom: 0.5em;
}

#userMessage{
	clear:both;
	padding:1em 1em 1em 64px;
	margin:0 1em 1em 1em;
	border:1px solid #CCCCCC;
	background-color:##FFFFBF;
	background-position:16px 16px;
	background-repeat:no-repeat;
}

#userMessage h3 {
	margin-bottom:0.5em;
}

#userMessage.formError{background-image:url(../ui/icon_userMessage_warning.gif);}
#userMessage.formInfo{background-image:url(../ui/icon_userMessage_info.gif);}
.he-required {border-color:#CD8633!important;}
.attention {border-color:red!important;}


