.hidden {
	opacity: 0;
	position: absolute;
}
.visible {
	opacity: 1;
}

input.calendar,
select.calendar {
	width: 115px;
}

button.calendar {
	background: url(/images/iconCalendar.png);
	border: 0;
	cursor: pointer;
	/*float: left;*/
	height: 14px;
	margin: 0 0 0 5px;
	width: 13px;
	padding:0;/*safari fix*/
	vertical-align: top;
}

button.calendar:hover,
button.calendar.active {
	/*background-position: 0 20px;*/
}

button::-moz-focus-inner { border: 0; } /* remove dotted line border when button is clicked on FF */

div.calendar {	
	background: url(/images/bgCalendar.png) no-repeat;
	width: 148px; 
	height: 185px; 
	padding: 20px 20px 10px 20px;
	text-align: center;
}	
	div.calendar * {
		margin: 0;
		padding: 0;
	}	
	div.calendar div {
		background: none !important;	
		cursor: move;
		width: 148px;
		height: 185px;
		/*overflow: hidden;*/		
		position: relative;		
	}		
	div.calendar caption {
		color: #fff;
		/*font: normal 12px/16px Arial, Helvetica, sans-serif;*/
		font: bold 12px Arial;
		padding: 0 0 3px 0;
		text-align: center;
		width: 100%;
		text-transform: uppercase;	
		position: relative;	
	}
	div.calendar caption a {
		cursor: pointer;
		display: block;
		height: 11px;
		overflow: hidden;
		position: absolute;
		text-indent: -100px;
		top: 3px;
		width: 9px;
	}
	div.calendar caption a.prev {
		background-image: url(/images/calendarPrev.png);
		left: 0;
		color: #fff;
		font: bold 12px Verdana;
	}
	div.calendar caption a.next {
		background-image: url(/images/calendarNext.png);
		right: 0;
		color: #fff;
		font: bold 10px Verdana;
	}
	div.calendar caption a:hover {
		/*background-position: 0 12px;*/
	}
	div.calendar caption span {
		/*height: 25px;*/
		position: relative;
		text-align: center;
	}
	div.calendar caption span.month {
		padding: 0 3px 0 9px;
	}
	div.calendar caption span.month:after {
		/*content: ',';*/
	}

	div.calendar table {
		/*background: #FFF;*/
		border: 0;
		border-collapse: collapse;
		border-spacing: 0;
		cursor: default;
		/*margin: 0 auto;*/
		overflow: hidden;
		width: 148px;
	}
	div.calendar td,
	div.calendar th {
		border: 0;
		color: #fff;
		font: normal 11px Arial, Helvetica, sans-serif;
		/*height: 16px;
		width: 16px;*/
		padding: 2px 0;
		text-align: center;		
	}
	div.calendar th { 
		font-weight: bold;
		/*height: 23px;*/
		vertical-align: top;
		padding: 6px 0 5px 0;
	}
	div.calendar td {
		/*background: url(../images/calendar-td.gif);*/
		color: #97adbc;
		font-size: 11px;
		border: 1px solid #959595;
		background-color: #e0e0e0;
	}
	div.calendar td.invalid {
		color: #7d5a35;
		background-color: #fff;
	}
	div.calendar td.valid {
		/*background: url(../images/calendar-valid.gif);*/
		/*color: #0597DB;*/
		color: #7d5a35;
		cursor: pointer;		
		background-color: #fff;
	}
	div.calendar td.hilite {
		/*background: url(../images/calendar-hilite.gif);
		background-color: #27baf4;*/
	}
	div.calendar td.inactive {
		/*background: url(../images/calendar-td.gif) 0 100%;*/
		color: #959595;
	}
	div.calendar td.active,
	div.calendar td.hover {
		/*background: url(../images/calendar-valid.gif) 0 100%;*/
		color: #FFF;
		cursor: pointer;
		background-color: #7d5a35;
	}
.close {
	position: absolute;
	top: -15px;
	left: 150px;
	cursor: pointer;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	font-family: Arial, Helvetica, sans-serif;
}