
/*
Generic form elements
---------------------
*/

#pageTitle h2 {
	margin: 8px 0px 12px 0px;
	text-transform: none;
}
#pageTitle h2 .divider {
	color: #cbe194;
}
#pageTitle h2 .faded {
	color: #cbe194;
}

#errorReport {
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 0px 0px;
	color: #ff3300;
}
#errorReport dt {
	margin: 0px 0px 2px 0px;
	padding: 0px 0px 0px 0px;
	font-weight: bold;
}
#errorReport dd {
	margin: 0px 0px 2px 0px;
	padding: 0px 0px 0px 8px;
}

#errorArea, .errorArea {
	display: block;
	position: relative;
	clear: both;
	margin: 0px 0px 1px 0px;
	padding: 8px 0px 1px 0px;
	background-color: #ffd7d2 !important;
}
#errorArea p, .errorArea p {
	margin: 0px 8px 8px 8px;
	padding: 0px 0px 0px 0px;
	color: #ff3300;
	font-weight: bold;
}
#errorArea li, .errorArea li {
	color: #ff3300;
	background-image: url("/images/common/list_bullet_red.gif") !important;
}

#christmasBooking #genericForm {
	display: none;
}
#jsActive #christmasBooking #genericForm {
	display: block;
}

#genericForm {
	display: block;
	width: 610px;
	margin: 15px 0px 20px 0px;
}
#genericFormMiddleColumn {
	display: block;
	width: 420px;
	margin: 15px 0px 20px 0px;
}
#voteForm {
	display: block;
	width: 250px;
	margin: 15px 0px 0px 0px;
}

#genericForm h2, #genericFormMiddleColumn h2 {
	display: block;
	margin: 0px 0px 1px 0px;
	padding: 3px 3px 3px 9px;
	font-size: 13px;
	line-height: 16px;
	font-weight: bold;
	text-transform: uppercase;
	border: none;
	background-color: #6f9809;
	color: #ffffff;
}
#genericForm h2.red {
	background-color: #ff3300;
}

#genericForm h3, #genericFormMiddleColumn h3 {
	display: block;
	margin: 0px 0px 1px 0px;
	padding: 3px 3px 3px 9px;
	font-size: 13px;
	line-height: 16px;
	font-weight: bold;
	text-transform: normal;
	border: none;
	background-color: #B4CE8B;
	color: #ffffff;
}

.mandatory {
	color: #ff3300;
}

#genericForm .formArea, #genericFormMiddleColumn .formArea {
	display: block;
	position: relative;
	clear: both;
	margin: 0px 0px 1px 0px;
	padding: 8px 0px 8px 0px;
	background-color: #F3F3F3;
}

#genericForm .formArea p.formIntro {
	color: #7fa913;
	padding: 0px 10px 0px 10px;
}
#genericForm .formArea p.formIntro a, #genericForm .formArea p.formIntro a:visited {
	color: #7fa913;
	text-decoration: underline;
}
#genericForm .formArea p.formIntro a:hover {
	color: #585858;
}

#genericForm .formAreaGap {
	display: block;
	position: relative;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	height: 10px;
	overflow: hidden;
}

#jsActive #genericForm .formAreaHidden {
	display: none;
	overflow: hidden;
	position: relative; /* God I hate IE! */
}

#jsActive #genericForm .formAreaHiddenShow {
	display: block;
	overflow: hidden;
	position: relative; /* God I hate IE! */
}

.formArea .textRight {
	position: absolute;
	margin: 0px 0px 0px 0px !important;
	padding: 0px 0px 0px 0px !important;
	top: 10px;
	left: 340px;
	width: 250px;
	font-size: 11px;
	line-height: 14px;
}
.formArea .textRight input {
	position: absolute;
	top: 13px;
	left: 0px;
}
.formArea .textRight label {
	color: #000;
	width: auto !important;
	left: 27px !important;
}

.formArea label {
	color: #6f9809;
}

#genericForm input.fullWidth, #genericForm textarea.fullWidth, #genericForm select.fullWidth {
	width: 360px;
}

#genericForm .standard input.fullWidth, #genericForm .standard textarea.fullWidth, #genericForm .standard select.fullWidth {
	width: 585px;
}

#genericForm input.smallWidth, #genericForm textarea.smallWidth {
	width: 75px;
}

#genericForm input.mediumWidth, #genericForm textarea.mediumWidth, #genericFormMiddleColumn input.mediumWidth {
	width: 250px;
}

#genericForm select.limitWidth, #genericForm input.limitWidth {
	width: 170px;
}

#genericForm select.limitWidthMore, #genericForm input.limitWidthMore {
	width: 200px;
}

#genericForm select.dateWidth, #genericForm input.dateWidth {
	width: 50px;
}

#genericForm .subsection {
	background-color: #F3F7E2;
}

#genericForm input.fileWidth {
	display: block;
	margin-bottom: 5px;
	width: 300px;
}

/*
Standard area elements
----------------------
*/

#genericForm .standard p {
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 5px 9px;
}

#genericForm .standard label {
	display: block;
	margin: 0px 0px 0px 0px;
	padding: 7px 9px 0px 9px;
}

/*
Tabbed area elements
---------------------
*/

#genericForm .tabbed div, #genericFormMiddleColumn .tabbed div {
	position: relative;
	padding-bottom: 7px;
}

#genericForm .tabbed p {
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 5px 200px;
}

#genericFormMiddleColumn .tabbed p {
	margin: 0px 0px 0px 0px;
	padding: 0px 9px 0px 90px;
}

#genericForm .tabbed div.breakTabbed p {
	margin: 0px 0px 0px 0px;
	padding: 7px 9px 0px 9px;
}

#genericForm .tabbedextra p {
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 18px 200px;
}

#genericForm .tabbed ul {
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 5px 160px;
}

#genericForm .errorText p {
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 5px 9px;
	color: #ff0000;
	font-weight: bold;
}

#genericForm .tabbed label, #genericForm .tabbedextra label {
	display: block;
	position: absolute;
	top: 10px;
	left: 9px;
	width: 168px;
}
#genericFormMiddleColumn .tabbed label {
	display: block;
	position: absolute;
	top: 10px;
	left: 9px;
	width: 78px;
}
#genericForm .tabbed label.centred, #genericForm .tabbedextra label.centred {
	top: 16px;
}
#genericForm .tabbed div label.centred {
	top: 8px;
}

#genericForm label.labelInline {
	position: relative;
	left: auto;
	top: auto;
	width: auto;
	margin: 0px 0px 0px 0px;
	padding: 5px 9px 0px 200px;
}

/* Details box elements */

#genericForm .detailsBox {
	display: block;
	/*position: relative;*/
	clear: both;
	margin: 0px 0px 1px 0px;
	padding: 8px 10px 1px 10px;
	background-color: #F3F3F3;
}

#genericForm .detailsBox .detailsLeft {
	display: inline;
	float: left;
	width: 275px;
}

#genericForm .detailsBox .detailsRight {
	display: block;
	float: left;
	width: 275px;
}

#genericForm .detailsBox dl {
	margin: 0px 0px 8px 0px;
	padding: 0px;
}
#genericForm .detailsBox dt {
	display: none;
}
#genericForm .detailsBox dd {
	display: block;
	position: relative;
	width: 590px;
	margin: 0px 0px 3px 0px;
	padding: 0px;
}
#genericForm .detailsBox dd .orderItem {
	display: inline;
	float: left;
	width: 470px;
	text-align: left;
}
#genericForm .detailsBox dd .orderItem .smallText {
	display: block;
	color: #666666;
	margin-bottom: 2px;
}
#genericForm .detailsBox dd .orderPrice {
	display: inline;
	float: right;
	width: 120px;
	font-weight: bold;
	text-align: right;
}
#genericForm .detailsBox dd .totalItem {
	display: inline;
	float: left;
	width: 520px;
	text-align: right;
}
#genericForm .detailsBox dd .totalPrice {
	display: inline;
	float: right;
	width: 70px;
	font-weight: bold;
	text-align: right;
}
#genericForm .detailsBox dd .divide {
	border-top: 1px solid #C1C1C1;
	margin-top: 2px;
	padding-top: 7px;
}
#genericForm .detailsBox dd .divideBottom {
	border-bottom: 1px solid #bbbbbb;
	margin-bottom: 3px;
	padding-bottom: 7px;
}

/* 2 and 3-Column elements */

#genericForm .threecol label.colone, #genericForm .threecol label.coltwo, #genericForm .threecol label.colthree {
	display: block;
	width: 190px;
}

#genericForm .threecol label.colone {
	position: absolute;
	top: 10px;
	left: 9px;
}

#genericForm .threecol label.coltwo {
	margin: 2px 0px 0px 250px;
	padding: 0px 0px 0px 0px;
}

#genericForm .threecol label.colthree {
	position: absolute;
	top: 10px;
	left: 400px;
}

#genericForm .twocol .cols, #genericForm .threecol .cols {
	position: relative;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

#genericForm .twocol .cols p {
	margin: 5px 0px 3px 10px;
	padding: 0px 0px 0px 0px;
	font-size: 11px;
	line-height: 13px;
	color: #888888;
}

#genericForm .twocol .cols .colone {
	position: relative;
	margin: 0px 0px 0px 10px;
	padding: 5px 0px 5px 0px;
}

#genericForm .twocol .cols .coltwo {
	position: absolute;
	top: 5px;
	left: 312px;
	_left: 302px; /* IE Hack */
}

#genericForm .twocol .cols .colone .datesIndicator {
	display: none;
	position: absolute;
	top: 91px;
	left: 118px;
}
#genericForm .twocol .cols .coltwo .datesIndicator {
	display: none;
	position: absolute;
	top: 86px;
	left: 118px;
}

#genericForm .threecol .cols .colone {
	margin: 0px 0px 0px 9px;
	padding: 5px 0px 5px 0px;
}

#genericForm .threecol .cols .coltwo {
	position: absolute;
	top: 5px;
	left: 248px;
	_left: 242px; /* IE Hack */
}

#genericForm .threecol .cols .colthree {
	position: absolute;
	top: 5px;
	left: 400px;
	_left: 392px; /* IE Hack */
}

#genericForm .threecol .cols .colthree .statusIndicator {
	display: none;
}

/* 5-Column elements */

#genericForm .fivecol label.colone, #genericForm .fivecol label.coltwo, #genericForm .fivecol label.colthree, #genericForm .fivecol label.colfour, #genericForm .fivecol label.colfive {
	display: block;
	width: 190px;
}

#genericForm .fivecol label.colone {
	position: absolute;
	top: 10px;
	left: 9px;
}

#genericForm .fivecol label.coltwo {
	margin: 2px 0px 0px 129px;
	padding: 0px 0px 10px 0px;
}

#genericForm .fivecol label.colthree {
	position: absolute;
	top: 10px;
	left: 250px;
}

#genericForm .fivecol label.colfour {
	position: absolute;
	top: 10px;
	left: 392px;
}

#genericForm .fivecol label.colfive {
	line-height: 13px;
	position: absolute;
	top: 11px;
	_top: 12px; /* IE Hack */
	left: 450px;
}
#genericForm .fivecol label.colfive .helpText {
	display: block;
	color: #6f9809;
	font-size: 9px !important;
	font-style: italic;
}

#genericForm .fivecol .cols {
	position: relative;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

#genericForm .fivecol .cols p {
	margin: 4px 0px 0px 2px;
	_margin: 2px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

#genericForm .fivecol .cols .colone {
	margin: 0px 0px 0px 9px;
	padding: 5px 0px 5px 0px;
}
#genericForm .fivecol .cols .colone .limitWidthMore {
	width: 100px;
}

#genericForm .fivecol .cols .coltwo {
	position: absolute;
	top: 5px;
	left: 129px;
	_left: 120px; /* IE Hack */
}
#genericForm .fivecol .cols .coltwo .limitWidthMore {
	width: 100px;
}

#genericForm .fivecol .cols .colthree {
	position: absolute;
	top: 5px;
	_top: 6px; /* IE Hack */
	left: 247px;
	_left: 240px; /* IE Hack */
}

#genericForm .fivecol .cols .colfour {
	position: absolute;
	top: 5px;
	_top: 6px; /* IE Hack */
	left: 389px;
	_left: 383px; /* IE Hack */
}

#genericForm .fivecol .cols .colfive {
	position: absolute;
	top: 5px;
	left: 450px;
	_left: 441px; /* IE Hack */
}
#genericForm .fivecol .cols .limitWidth {
	width: 120px;
	_width: 125px;
}

#genericForm .fivecol .cols .colfive .statusIndicator {
	display: none;
}

/*
Other form elements
---------------------
*/

#genericForm .helpText  {
	font-size: 10px;
	line-height: 12px;
	font-weight: normal;
	color: #666666;
}

#genericForm #submitArea, #genericFormMiddleColumn #submitArea { 
	display: block;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	text-align: center;
	font-weight: bold;
	background-color: #C1C1C1;
}

#genericForm #submitArea p, #genericFormMiddleColumn #submitArea p {
	margin: 0px 0px 0px 0px;
	padding: 10px 10px 10px 10px;
}

#genericForm .formArea label.inlineLabel {
	display: inline;
	font-weight: bold;
}
#genericForm .formArea label.inlineLabel span {
	display: block;
	margin-left: 33px;
	color: #000000;
	font-weight: normal;
}

#genericForm #submitArea input {
	font-size: 12px;
	margin: 0px 30px 0px 30px;
}

#voteForm #submitArea input {
	margin: 0px 0px 0px 0px;
	padding: 0px 10px 0px 10px;
}

/*
Form calendar
-------------
*/

.formArea .calendar {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border-collapse: collapse;
} 

.formArea .calendar caption {
	background-color: #aaaaaa;
	color: #ffffff;
} 

.formArea .calendar th, .formArea .calendar td {
	padding: 5px 0px 5px 0px;
	border: 1px solid #aaaaaa;
	text-align: center;
}

.formArea .calendar td.reduced, .formArea span.reduced {
	background-color: #ffee86;
}
.formArea .calendar td.staff, .formArea span.staff, .formArea .calendar td.groups, .formArea span.groups {
	background-color: #abe0fe;
}
.formArea .calendar td.booked, .formArea span.booked {
	font-weight: normal;
	color: #bbbbbb;
	background-color: #dddddd;
}
.formArea .calendar td.hover, .formArea span.hover {
	background-color: #b4ce8B;
	color: #ffffff;
}
.formArea .calendar td.selected, .formArea span.selected {
	background-color: #6f9809;
	color: #ffffff;
	font-weight: bold;
}

.formArea .calendar th {
	font-weight: bold;
	background-color: #eeeeee;
}
.formArea .calendar td {
	font-weight: bold;
	background-color: #e7f1be;
}
.formArea .calendar td.inactive {
	font-weight: normal;
	color: #cccccc;
	background-color: #ffffff;
}

.formArea .calendar td a, .formArea .calendar td a:visited, .formArea .calendar td a:hover {
	display: block;
	margin: -5px 0px -5px 0px;
	padding: 5px 0px 5px 0px;
	color: #000000;
	text-decoration: none;
}
.formArea .calendar td a:hover {
	color: #ffffff;	
}
.formArea .calendar td.selected a, .formArea .calendar td.selected a:visited, .formArea .calendar td.selected a:hover {
	color: #ffffff;
}
.formArea .calendar td.booked a, .formArea .calendar td.booked a:visited, .formArea .calendar td.booked a:hover {
	color: #bbbbbb;
}
.formArea .calendar td.inactive a, .formArea .calendar td.inactive a:visited, .formArea .calendar td.inactive a:hover {
	color: #cccccc;
}

/*
Form timeslots
--------------
*/

.formArea #timeslots {
	position: relative;
	margin: 0px 0px 0px 10px;
	padding: 0px 0px 0px 0px;
}

.formArea #timeslots .timeslot, .formArea #timeslots .timeslot:visited {
	display: inline-block;
	margin: 5px 6px 5px 0px;
	padding: 6px 0px 6px 0px;
	width: 59px;
	_width: 61px;
	border: 1px solid #aaaaaa;
	text-align: center;
	text-decoration: none;
	line-height: 15px;
	background-color: #ffffff;
	color: #000000;
	font-weight: bold;
}
.formArea #timeslots .timeslot:hover {
	background-color: #b4ce8B;
	color: #ffffff;
}

.formArea #timeslots .timeslotbooked, .formArea #timeslots .timeslotbooked:visited, .formArea #timeslots .timeslotinactive, .formArea #timeslots .timeslotinactive:visited {
	display: inline-block;
	margin: 5px 6px 5px 0px;
	padding: 6px 0px 6px 0px;
	width: 59px;
	_width: 61px;
	border: 1px solid #aaaaaa;
	text-align: center;
	text-decoration: none;
	line-height: 15px;
	background-color: #ffffff;
	color: #cccccc;
	font-weight: normal;
}
.formArea #timeslots .timeslotbooked:hover, .formArea #timeslots .timeslotinactive:hover {
	background-color: #ffffff;
	color: #cccccc;
}

.formArea #timeslots .timeslotselected, .formArea #timeslots .timeslotselected:visited {
	display: inline-block;
	margin: 5px 6px 5px 0px;
	padding: 6px 0px 6px 0px;
	width: 59px;
	_width: 61px;
	border: 1px solid #aaaaaa;
	text-align: center;
	text-decoration: none;
	line-height: 15px;
	background-color: #6f9809;
	color: #ffffff;
	font-weight: bold;
}
.formArea #timeslots .timeslotselected:hover {
	background-color: #6f9809;
	color: #ffffff;
}

.formArea #timeslots .divide {
	display: inline-block;
	margin: 5px 7px 5px 0px;
	padding: 6px 0px 6px 0px;
	width: 19px;
	text-align: center;
	text-decoration: none;
	line-height: 15px;
	background-image: url("/images/christmas/divider.gif");
	background-repeat: repeat-y;
	background-position: top center;
}

.formArea #timeslots p.daytime {
	margin: 5px 0px 3px 0px !important;
	padding: 0px 0px 0px 0px !important;
	font-size: 11px;
	line-height: 13px;
	color: #888888;
}
.formArea #timeslots p.evening {
	position: absolute;
	top: 44px;
	left: 456px;
	margin: 0px 0px 0px 0px !important;
	padding: 0px 0px 0px 0px !important;
	font-size: 11px;
	line-height: 13px;
	color: #888888;
}

.formArea .reservedMessage {
	color: #ff0000;
}
.formArea .reservedMessage a, .formArea .reservedMessage a:visited {
	color: #ff0000;	
}
.formArea .reservedMessage a:hover {
	color: #ff0000;	
}

