/* Stili calendar */
.date {		
	float: left;
	display: block;
	border: 1px solid #ccc;
	background: #eee;
	cursor: pointer;
}

/* date input trigger element */
.caltrigger {
	display: block;
	margin: 12px 0 0 10px;
	width: 30px;
	height: 32px;
	float: left;
	background: url(../img/calendar.png) no-repeat 0 0;
}

.active .caltrigger {
	background-position: 0 -32px;		
}

/* calendar root element */
#calroot {
	/* place on top of other elements. set a higher value if nessessary */
	z-index: 1000;
	font-family: Arial, Helvetica, sans-serif;
	background-color: #eee;
	border: 1px solid #ccc;
	padding-top: 10px;
	/*height: 160px;*/
	width: 227px;	
	display: none;
	margin: 0 0 0 -7px;
	-moz-box-shadow: 3px 3px 12px rgba(33,33,33,0.5);
	-webkit-box-shadow: 3px 3px 12px rgba(33,33,33,0.5);
	box-shadow: 3px 3px 12px rgba(33,33,33,0.5);
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px; 		
}

/* head. contains title, prev/next month controls and possible month/year selectors */
#calhead {	
	padding: 2px 0;
	height: 22px;
} 

#caltitle {
	font-size: 14px;
	color: #333;	
	float: left;
	text-align: center;
	width: 160px;
	line-height: 20px;
	text-shadow: 0 1px 0 #000;
}

#calnext, #calprev {
	display: block;
	width: 20px;
	height: 20px;
	background: transparent url(../img/prev.png) no-repeat scroll center center;
	float: left;
	cursor: pointer;
	margin-left: 9px;
}

#calnext {
	background-image: url(../img/next.png);
	float: right;
	margin-right: 9px;
}

#calprev.caldisabled, #calnext.caldisabled {
	visibility: hidden;	
}

/* year/month selector */
#caltitle select {
	font-size: 10px;	
}

/* names of the days */
#caldays {
	height: 18px;
	border-bottom: 2px solid #333;
}

#caldays span {
	display: block;
	float: left;
	width: 32px;
	text-align: center;
	font-size: 11px;
}

/* container for weeks */
#calweeks {
	margin-top: 6px;
	padding-top: 3px;
}

/* single week */
.calweek {
	clear: left;
	height: 22px;
}

/* single day */
.calweek a {
	display: block;
	float: left;
	width: 31px;
	height: 20px;
	background: #ccc;
	text-decoration: none;
	font-size: 11px;
	margin-left: 1px;
	text-align: center;
	line-height: 20px;
	color: #333;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px; 		
} 

/* different states */
.calweek a:hover, .calfocus {
	background-color: #f90;
}

/* sunday */
a.calsun {
	color: #bbb;		
}

/* offmonth day */
a.caloff {
	color: #666;
	background: #ddd;	
}

a.caloff:hover {
	color: #f90;
	background-color: #fc0;		
}


/* unselecteble day */
a.caldisabled {
	background-color: #eee !important;
	color: #999	!important;
	cursor: default;
}


/* current date */
#calcurrent {
	background-color: #c60;
	color: #fff;
}

/* today */
#caltoday {
	background-color: #06c;
	color: #fff;
}

/* stili validazione form */
.error {
	padding: 4px 10px;
	border: 1px solid #c00;
	height: 15px;
	background-color: #f00;
	font-size: 12px;
	color: #fff;
	display: none;	
	
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px; 
	-moz-border-radius-bottomleft: 0;
	-moz-border-radius-topleft: 0;	
	-webkit-border-bottom-left-radius: 0; 
	-webkit-border-top-left-radius: 0;
}

.error p {
	margin:0;		
}
