body {
	font: 12px Arial, Helvetica, sans-serif;
	background: #FFFFFF;
	margin: 0;
	/* è buona norma impostare a zero i valori margin e padding dell'elemento body per tenere conto delle diverse impostazioni predefinite dei browser*/
	padding: 0;
	text-align: center;
	/* centra il contenitore nei browser IE 5*. Il testo viene quindi impostato con l'allineamento predefinito a sinistra nel selettore #container */
	color: #000000;
	background-image: url(img/sfondo.jpg);
	background-repeat: repeat-x;
	background-position: top;
}

a,
a:visited {
	color: #0000FF;
}

a:hover {
	color: #FF0000;
}

h3 {
	text-align: center;
	color: #003399;
	font-weight: bold;
	padding: 0;
	margin: 20px auto;
}

.table a,
.table a:visited {
	text-decoration: none;
	color: #0000FF;
}

.table a:hover {
	text-decoration: underline;
}

.oneColFixCtrHdr #container {
	width: 960px;
	/* utilizzando 20 px in meno rispetto alla dimensione piena di 800 px lascia spazio per gli elementi grafici e strutturali del browser ed evita che venga visualizzata una barra di scorrimento orizzontale */
	background: #FFFFFF;
	margin: 20px auto;
	/* i margini auto (insieme a una larghezza) centrano la pagina */
	border: 1px solid #CCCCCC;
	text-align: justify;
	/* sostituisce l'impostazione text-align: center nell'elemento body. */
}

.oneColFixCtrHdr #header {
	background: url(img/sitelogo.png) top no-repeat;
	height: 90px;
	/* padding: 0 10px 0 20px;  questo padding corrisponde all'allineamento a sinistra degli elementi nei div sottostanti. Se in #header viene utilizzata un'immagine anziché un testo, può essere utile rimuovere il padding. */
}

.oneColFixCtrHdr #header h1 {
	margin: 0;
	/* azzerando il valore margin dell'ultimo elemento del div #header si evita la compressione del margine, con la creazione di uno spazio inspiegabile tra i div. Se il div è circondato da un bordo, questo accorgimento non è necessario perché anche il bordo impedisce la compressione del margine */
	padding: 69px 0 0 20px;
	/* l'uso del valore padding al posto di margin consente di distanziare l'elemento dai bordi del div */
	color: #666666;
	font-size: 12px;
}

.oneColFixCtrHdr #mainContent {
	background: url(img/main_content_bg.png) top no-repeat;
	padding: 0 5px;
	/* ricordare che i valori padding e margin corrispondono rispettivamente allo spazio interno ed esterno al riquadro div  */
	clear: both;
}

.oneColFixCtrHdr #footer {
	padding: 0 10px;
	/* questo padding corrisponde all'allineamento a sinistra degli elementi nei div sovrastanti. */
	text-align: center;
	font-size: 10px;
	background-image: url(img/sfondo_menu.gif);
	background-repeat: repeat-x;
}

.oneColFixCtrHdr #validator {
	height: 50px;
	text-align: center;
	margin: 2px;
}

.oneColFixCtrHdr #footer p {
	margin: 0;
	/* azzerando il valore margin del primo elemento del footer si evita il rischio di compressione del margine, con la creazione di uno spazio tra i div */
	padding: 8px 0;
	/* il padding di questo elemento crea uno spazio, così come avverrebbe specificando un valore margin, senza il problema della compressione del margine */
}

#menu {
	background-color: #006790;
	height: 20px;
	margin-bottom: 15px;
}

.message {
	font-weight: bold;
	color: #FF0000;
	text-align: center;
	font-size: 14px;
	margin: 50px;
}

.table {
	background-color: #FFFFFF;
	width: 100%;
	font-size: 10px;
}

.table th {
	background-image: url(img/sfondo_menu.gif);
	background-repeat: repeat-x;
	background-position: bottom;
	padding-bottom: 4px;
}

.table td {
	padding: 2px;
	text-align: left;
}

.table .inputtext {
	border: 1px solid Gray;
	padding: 2px;
	font: 11px Arial, Helvetica, sans-serif;
}

.table .inputtext_small {
	width: 90px;
	text-align: right;
	border: 1px solid Gray;
}

#search {
	margin: 0;
	padding: 5px;
}

#operatore {
	font-size: 9px;
	font-weight: bold;
	color: Silver;
	padding-top: 12px;
	padding-right: 10px;
	padding-left: 0;
	padding-bottom: 0;
	margin: 0;
	text-align: right;
}

.search_loading {
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: 99% bottom;
}

.ajax_loading {
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: 4% 50%;
}

#searchbox {
	padding: 20px 0;
	margin: 2px;
	background-image: url(img/sfondo_menu.gif);
	background-repeat: repeat-x;
	background-position: bottom;
}

#searchbox label {
	font-weight: bold;
	color: Gray;
}

#searchbox legend {
	font-weight: bold;
	color: #00CC00;
	margin-bottom: 5px;
}

#searchbox fieldset {
	border: none;
	padding: 3px;
	margin: 0;
}

.inputtext {
	border: 1px solid Gray;
	padding: 2px;
	font: 12px Arial, Helvetica, sans-serif;
}

#login {
	padding-top: 50px;
	text-align: center;
}

.loginform {
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	text-align: left;
	width: 350px;
	border: 1px solid #DDD;
	padding: 10px;
	background-color: #EEE;
}

.loginform {
	background-image: url(img/key.gif);
	background-repeat: no-repeat;
	background-position: 97% center;
}

.loginform_loading {
	background-image: url(img/loading.gif);
}

.loginform fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

.loginform fieldset div {
	float: left;
	width: 100%;
}

.loginform legend {
	font-weight: bold;
	color: #00CC00;
	margin-bottom: 10px;
}

.loginform label {
	width: 150px;
	float: left;
	display: inline;
	text-align: right;
	padding-right: 5px;
	line-height: 23px;
}

.loginform fieldset input {
	width: 150px;
	margin-bottom: 5px;
	border: 1px solid Gray;
}

.form {
	width: 95%;
	text-align: left;
}

.form fieldset {
	border: 1px solid #CCCCCC;
	padding-top: 0;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
}

.form legend {
	font-weight: bold;
	color: #00CC00;
	margin: 2px 0;
	padding: 0;
}

#popup {
	z-index: 1000;
	display: none;
	position: absolute;
}

.pulsante {
	background-color: #006790;
	font-weight: bold;
	font-size: 12px;
	padding: 6px 8px;
	border: none;
	border-radius: 12px;
	color: #FFFFFF;
}

.required {
	color: #FF0000;
}

.etichetta_1 {
	float: left;
	width: 50%;
	line-height: 2em;
	text-align: right;
}

.etichetta_2 {
	float: right;
	width: 48%;
	font-weight: bold;
	line-height: 1.8em;
	margin: 1px;
	background-color: #FAFAFA;
}

.etichetta_3 {
	float: left;
	width: 28%;
	line-height: 2em;
	text-align: right;
}

.etichetta_4 {
	float: right;
	width: 70%;
	font-weight: bold;
	line-height: 1.8em;
	margin: 1px;
	background-color: #FAFAFA;
}

.etichetta_2 input {
	vertical-align: bottom;
}

.left_side {
	float: left;
	width: 49%;
}

.right_side {
	float: right;
	width: 49%;
}

.error_message {
	position: absolute;
	top: -2px;
	left: 177px;
	background: #FF6666;
	color: #FFFFFF;
	border: 1px solid Gray;
	z-index: 1000;
	padding: 0 5px;
	width: auto;
	text-align: center;
	display: none;
	white-space: nowrap;
}

/* set the image to use and establish the lower-right position */
.cssbox,
.cssbox_body,
.cssbox_head,
.cssbox_head h2 {
	background: transparent url(img/img.png) no-repeat bottom right
}

.cssbox {
	/* intended total box width - padding-right(next) */
	width: 300px !important;
	/* IE Win = width - padding */
	width: 285px;
	/* the gap on the right edge of the image (not content padding) */
	padding-right: 15px;
	/* use to position the box */
	margin: 20px auto;
}

/* set the top-right image */
.cssbox_head {
	background-position: top right;
	/* pull the right image over on top of border */
	margin-right: -15px;
	/* right-image-gap + right-inside padding */
	padding-right: 30px
}

/* set the top-left image */
.cssbox_head h2 {
	background-position: top left;
	font-size: 14px;
	font-weight: bold;
	color: #663300;
	margin: 0;
	/* reset main site styles*/
	border: 0;
	/* ditto */
	/* padding-left = image gap + interior padding ... no padding-right */
	padding: 25px 0 0px 30px;
	height: auto !important;
	height: 1%
}

/* IE Holly Hack */
/* set the lower-left corner image */
.cssbox_body {
	background-position: bottom left;
	margin-right: 25px;
	/* interior-padding right */
	padding: 15px 0 15px 30px;
}

/* mirror .cssbox_head right/left */
#box_importazione,
#box_importazione td {
	background-color: #EEE;
}

#note_div {
	background-color: #FFFFAA;
	font-size: 0.8em;
	position: absolute;
	width: 200px;
	overflow: auto;
	border: 1px solid #CCCCCC;
	color: #666666;
	text-align: left;
	padding: 5px;
	display: none;
	border-radius: 2px 2px 2px 2px;
	box-shadow: 3px 3px 15px #BBBBBB;
}

.sfondo_rosso {
	background-color: #F99 !important;
}

.sfondo_verde {
	background-color: #9F9 !important;
}

.sfondo_azzurro {
	background-color: #6CF !important;
}

.pdf_icon {
	background-image: url(img/pdf_icona_2.gif);
	background-repeat: no-repeat;
	background-position: left;
	padding-left: 20px;
}

.zip_icon {
	background-image: url(img/zip_icona.gif);
	background-repeat: no-repeat;
	background-position: 5px center;
	padding-left: 22px;
}

.mail_icon {
	background-image: url(img/mail_icona.png);
	background-repeat: no-repeat;
	background-position: 5px center;
	padding-left: 22px;
}

.ticket_icon {
	background-image: url(img/ticket_icona.png);
	background-repeat: no-repeat;
	background-position: 5px center;
	padding-left: 22px;
}

.excel_icon {
	background-image: url(img/excel_icona.png);
	background-repeat: no-repeat;
	background-position: 5px center;
	padding-left: 25px;
}

.sfondo_verde {
	background-color: #DFD !important;
}

.image_container {
	position: relative;
	width: 150px;
	height: 150px;
	float: left;
	box-shadow: 0px 0px 10px 5px #666;
	margin: 10px 42px;
}

.image_container img {
	border: 0;
	width: 100%;
	height: 100%;
}

.image_container:hover {
	box-shadow: 0px 0px 10px 2px #3C9;
}

.image_label {
	background-color: rgba(0, 0, 0, .5);
	position: absolute;
	bottom: 0px;
	left: 0px;
	color: #FFF;
	padding: 5px;
	width: 140px;
	box-shadow: inset -2px -2px 2px 1px #666;
	text-align: left;
}

.box_newsletter {
	text-align: center;
	margin: 30px auto;
}

.assegnato0gg {
	background-color: #AFA !important;
}

.assegnato3gg {
	background-color: #FFA !important;
}

.assegnato7gg {
	background-color: #FAA !important;
}

.tooltip {
	color: #000;
	background: #EEE;
	border: 1px solid #CCC;
	margin: 3px;
	padding: 2px;
}

.warning {
	display: none;
	background-color: #F99;
	color: White;
	font-size: 14px;
	font-weight: bold;
	border-radius: 10px;
	margin: 20px;
	line-height: 30px;
}

#elenco_documenti img {
	box-shadow: inset -2px -2px 2px 1px rgb(230, 230, 230);
}

#elenco_documenti .libro:hover {
	box-shadow: 0px 0px 10px 2px #CCC;
}

.highlighted {
	box-shadow: 0px 0px 4px 2px #CCC;
}