
html * {
	font-family: 'Open Sans', Verdana, sans-serif !important;
}

body {
	margin: 0px; 
	font-family: 'Open Sans', Verdana, sans-serif;
	background:#FFF;	
}

table {
	border: 1px solid #ddd;
	padding:0;
	border-collapse: collapse;
	border-spacing: 0;
	max-width:99%;
}
table#stampadoc {
	border: 0px;
}
table#stampadoc > table {
	border: 0px;
}

		
hr {
	border-top: 0.5px dashed #666;
	border-bottom: 0.5px dashed #eee;
	padding-bottom: 1px;	
}

a:link {
	color: #333333;
	text-decoration: none;
}
a:active {
	color: #FF9933;
	text-decoration: none;
}
a:visited {
	color: $blu_chiaro;
	text-decoration: none;
}
a:hover { 
	text-decoration: underline; 
	color: #990000;
}

/* ---- FORM GENERICO ---- */
form {
}
input {
}
select {
	max-width: 320px;
	overflow: hidden;
}
label{
}
label textarea {
	vertical-align: middle;
}
input[type=submit],
input[type=button] {
	color: Green;
	background: #EEE;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	border: 1px outset #999999;
	border-radius: 12px 12px 12px 12px;
	padding: 4px 8px 4px 8px;
	margin: 2px 2px 2px 2px;
	cursor:pointer;	
}
input[type=submit]:hover,
input[type=button]:hover,
.bottone_conferma:hover {
	color: DarkGreen;	
	background: #FFF;
	border: 1px solid DarkGreen;
}
input[type=file]{ 
	width: 300px;
	border: 2px solid DarkGreen;
	border-radius: 12px;
	padding: 20px;	
}
fieldset{
	display: inline-block;
	vertical-align: top;	
	border: 1px outset #BBB;
	border-radius: 12px;
	padding: 2px 4px 2px 4px;
	margin: 4px 3 4px 3px;
}
/* ---- FORM SU DUE COLONNE (LABEL|INPUT) -> TARATO SUL FORM LOGIN!!! */
.form2cols label {
    display: inline-block;
    width: 120px;
    padding: 0 10px 10px 0;
	text-align: right;
}
.form2cols input, .form2cols select {
    display: inline-block;
    width: calc(90% - 130px);
	padding: 6px;
}
.form2cols input[type=submit], .form2cols input[type=button] {
	display: inline-block;
    width: 90%;
	border-radius: 15px 15px 15px 15px;
}
.form2cols input[type=radio], .form2cols input[type=checkbox] {
    width: auto;
}
/* ---- FORM LOGIN -------------------*/
form[name="form_login"] input[type=submit]{ 
	font-size: 18px;
}

/* ---- FORM BOOKING (duplicato in sito_unico)-------------------*/
form[name="form_booking"] { 
}
.form_booking input[type="submit"]{
}
.form_booking label{
	background: none;
	display:block;	
}
.form_booking label span{
	display: inline-block;
	width: 140px;
	/* text-align: right; */
	/* white-space: nowrap; */
}
.form_booking label span img{
	max-height: 18px;
}

.form_booking input[type="text"],
.form_booking input[type="password"],
.form_booking input[type="date"],
.form_booking input[type="submit"],
.form_booking input[type="button"],
.form_booking textarea,
.form_booking select {
	/* width: 40%; */
}
@media (max-width:801px){
	.form_booking input[type="text"],
	.form_booking input[type="password"],
	.form_booking input[type="date"],
	.form_booking input[type="submit"],
	.form_booking input[type="button"],
	.form_booking textarea,
	.form_booking select {
		width: 90%;
	}
}

/* ---- FORM IMPOSTAZIONI -----------------*/
/* RADIO E CHECKBOX A BOTTONI-INTERRUTTORI  <input type=radio id=aaa><label for=aaa>etich</label> */
form[name="impostazioni"] input[type=radio]{
	display:none;
}
form[name="impostazioni"] input[type=radio] + label {
	display: inline-block;
	cursor: pointer;
	margin:0 2px 0 1px;
	padding: 2px 18px;
	background-color: #FFF;	
	border: 2px solid #EEE;
	border-radius: 18px;
	color:#CCC;
}
form[name="impostazioni"] input[type=radio] + label:hover {
	border: 2px solid green;
}
form[name="impostazioni"] input[type=radio]:checked + label {
	border: 2px solid green;
	color:#000;
}



.titolo_software {
	font-size:1.8em;
	font-weight: 100;
	margin:0 0 0 0;
	//border-bottom: 0.5px dashed #666;
	padding-bottom: 10px;
}
.codice_software{
	font-size:1.1em;
	font-weight: 100;
}
.menu_cambia_tipoapp{
	margin: 10px 2px 10px 2px;
}
.link_cambia_tipo_app {
	background: #EEE;
	font-size:0.8em;
	font-weight: 600;
	color: #CC0000;
	border-bottom: 0.5px solid #EEE;
	border-radius: 16px;
	padding: 5px;
	margin:0 0 1px 0;
}
.link_cambia_tipo_app:hover {
	/*cursor: pointer;*/
}
.link_cambia_tipo_app a:link {
	color: #CC0000;
	text-decoration: none;
}
.link_cambia_tipo_app a:active {
	color: #CC0000;
	text-decoration: none;
}
.link_cambia_tipo_app a:visited {
	color: #990000;
	text-decoration: none;
}
.link_cambia_tipo_app a:hover { 
	color: #FF0000;
}
div.link_cambia_tipo_app:hover { 
	text-decoration: none; 
	color: #FF0000;
	background: #FFF;
}
.app_selected {
	font-size:1em;
	font-weight: bold;
	background: #FFF;
	border-bottom: none;
}

#bannertop > img {
	max-width:100%;
	max-height:200px;	
	float:left;
	margin-right: 6.5%;
}

#istruzioni {
	float: right;
	clear: both;
	/*position: absolute;*/
	/*top:2px;*/
	/*right:2px;*/	
}

#box_login{
	width:60%;
}

#menuleft {
	float: left;
	width: 20%;
	margin-right: 1%;
	background: #DDDDDD;
}
#menuleft hr {
	clear:both;
}
.link_menuleft {
	line-height: 28px;
	font-size:0.9em;
	font-weight: 400;
	color: #222;
	border-bottom: 0.5px solid #DDD;
	border-radius: 16px;
	padding: 1px;
	margin: 1px 0 1px 14px;
	clear:both;
	vertical-align:middle;
}
.link_menuleft img {
	float:left;
	margin: 0 4px 0 0;
	max-height: 36px;
}
.link_menuleft a:link {
	color: #333333;
	text-decoration: none;
}
.link_menuleft a:active {
	color: #111111;
	text-decoration: none;
}
.link_menuleft a:visited {
	color: #333333;
	text-decoration: none;
}
.link_menuleft a:hover { 
	color: #000;
}
div.link_menuleft:hover { 
	text-decoration: none; 
	color: #FF0000;
	background: #EEE;
	/*cursor: pointer;*/
}

#corpo {
	float: left;
	width: 78%;
	margin-left: 1%;
	/*padding: 5px;*/
}
#corpo:after {
	/*display: table;*/
	clear: both;
}
#bottone_menuleft{
	display: none;
	cursor: pointer;
	float:left;
}
#chiudi_menuleft{
	display: block;
	cursor: pointer;
	float:left;
}

#bottom {
	clear: both;
	text-align:center;
	padding: 10px 0 0 0;
}

.opzioni_albero_struttura {
	float:right;
	display:inline
}

.menu_orizzontale {
	display: inline-block;
	margin: 0 0 6px 0;
}
.menu_orizzontale_overflow {
	max-height: 120px;
	overflow-y: auto;
	border: 1px solid #EEE;
}
.menu_centrato {
	display: inline-block;
	width: 100%;
	text-align: center;
}
.bottone_menu_orizz,
.button_group {
	display: inline;
	background: #EEE;
	font-size:0.8em;
	font-weight: 600;
	color: #333333;
	border: 1px solid transparent;
	border-radius: 16px;
	padding: 5px;
	margin: 0 2px 1px 0;
	white-space: nowrap;
}
.button_group {
	padding: auto;
	border: 1px outset #EEE;
}
.bottone_menu_orizz_multiline,
.bottone_multiline {
	display: inline-block;
}
.bottone_menu_orizz img,
.button_group img {
	max-height:36px;
}
.bottone_menu_orizz:hover { 
	background: #FFF;
	border: 1px outset DarkGreen;
	/*cursor: pointer;*/
}
.bottone_menu_orizz a:link {
	color: #111;
	text-decoration: none;
}
.bottone_menu_orizz a:visited {
	color: #333;
	text-decoration: none;
}
.bottone_menu_orizz a:hover {
	color: DarkGreen;	
}
.bottone_conferma {
	color: Green;
	border: 1px outset #999999;
}
.bottone_conferma a:link, .bottone_conferma a:visited{
	color: Green;	
}
.box_testo .bottone_menu_orizz {
	border: 1px solid #AAA;
}
form .bottone_menu_orizz {
}
.bottone_alert:hover, .box_testo .bottone_alert:hover {
	color: #CC0000;
	border: 1px solid red;
}
.bottone_alert a:hover, .box_testo .bottone_alert a:hover {
	color: #CC0000;
}
.titolo_pagina{
	font-size:1.6em;
	font-weight: 100;
	margin: 4px 0 16px 0;
}
.titolo_funzione {
	font-size:1.6em;
	font-weight: 100;	
	display: block;
	margin: 4px 12px 16px 0;
}
.titolo{
	font-size:1.6em;
	font-weight: 100;
	margin: 4px 0 16px 0;
}
.sottotitolo{
	font-size:1.3em;
	font-weight: 300;
	margin: 2px 0 8px 0;
}
.sottotitolo_rosso{
	color: #CC0000;
	font-size:1.2em;
	font-weight: 600;
	margin: 2px 0 8px 0;
}

.box_testo{
	background: #EEEEEE;
	background-image: linear-gradient(-45deg, #F8F8F8, #EEE);
	color: #333333;
	border-bottom: 0.5px solid #777;
	border-radius: 32px;
	padding: 20px;
}
form.box_testo, .box_testo_inline{
	display: inline-block;
	vertical-align:top;
	/*background:#FFF;*/
	/* border: 0.5px solid #AAA;*/
	/*border-bottom: 1px solid #555;*/
	border-radius: 24px;
	padding: 10px;
}
.immagine_in_tabella{
	max-width: 120px;	
	max-height:120px;
}
.box_testo .immagine_in_tabella{
	max-width: 800px;	
	max-height:300px;
}
#tab_gallery .immagine_in_tabella{
	max-width: 600px;	
	max-height:400px;	
}


/* ------ CAMPI DI INPUT -------------------*/
input[name=cap], input[name=CAP], input[name=CAP2]{
	width: 76px; 
}
input[name=prov], input[name=PROV], input[name=PROV2], input[name=PROVINCIA]{
	width: 36px;
}
input[name=SCONTO]{
	width: 64px;
}
input[name=altezza], input[name=peso]{
	width: 64px;
}


/* ------ MODIFICA_DATI ------ */
#stampa_quanti_risultati, #stampa_navigatore_pagine{
	font-size:13px;
}


#filtro_ricerca {
	position:relative;
	background:#EEE; 	
}
#opzioni_filtro_ricerca {
	position:relative;
	text-align: right;
}

/* ------ EMISSIONE DOCUMENTI ------ */
form#form_dati_utente {
	min-width:60%;
}
form#mittente_doc, form#destinatario_doc {
	min-width:40%;
}
#tabellone_prodotti_doc thead {
	background: #CCC;
	font-size: small;
	font-weight: bold;
	text-align: center;
	text-transform: capitalize;
}
#tabellone_prodotti_doc td {
	vertical-align:top;
}
#tabellone_prodotti_doc input {
	text-align:right;	
}
#menu_stampa_conferma_doc .titolo{
	font-weight:400;
}
#container_cassatouch {
	display: inline-block;	
}
#contenitoretc {
	width: 100%;
	/* height: 100%; */
	max-height: calc(100vh - 50px);
	border: 1px solid Gray; 
	overflow: auto;
}

/* ------ TABELLA INSERISCI_DATI ------ */
.tab_inserisci_dati{
	border: 1px solid #FFF;
	background-image: url('images/sfondo_gestionedati.jpg');
}
.tab_inserisci_dati tr:nth-child(even){
	background: #FFF;
}
.tab_inserisci_dati tr:nth-child(odd){
	background: #F2F2F2;
}
.tab_inserisci_dati td {
	padding: 4px;
	border-spacing: 1px;
	border-collapse: separate;			
}
.td_campo_insert_etich {
	text-align:right;
	font-weight: bold;
}

/* ------ TABELLA INSERISCI_DATI EMBEDDED TRAMITE "importa_pagina" (=> VEDI BOX MITTENTE/DESTINATARIO IN DOCS) ------ */
#mittente_doc #titolo_inserisci_dati, #destinatario_doc #titolo_inserisci_dati{
	display:none;
}
#mittente_doc .tab_inserisci_dati, #destinatario_doc .tab_inserisci_dati{
	border: 0px solid #FFF;
	background-image: none;
}
#mittente_doc .tab_inserisci_dati tr:nth-child(even), #destinatario_doc .tab_inserisci_dati tr:nth-child(even){
	background: #FFF;
}
#mittente_doc .tab_inserisci_dati tr:nth-child(odd), #destinatario_doc .tab_inserisci_dati tr:nth-child(odd){
	background: #F2F2F2;
}
#mittente_doc .tab_inserisci_dati td, #destinatario_doc .tab_inserisci_dati td{
	padding: 2px;
	border-spacing: 1px;
	border-collapse: separate;			
}
#mittente_doc .td_campo_insert_etich, #destinatario_doc .td_campo_insert_etich{
	font-size:13px;
	font-weight: normal;
}



/* ------ TABELLONE LISTA DOCUMENTI/STATISTICHE ------ */
table.tabellone_lista_doc{
	width:100%;
	max-width:600px;
	font-size: 12px;
}
table.tabellone_lista_doc th{
	font-weight:normal;
	text-align: left;
	background-color:#DDD;					
}		
table.tabellone_lista_doc .codice, table.tabellone_lista_doc .descrizione{
	text-align: left;
	font-weight:bold;					
}
table.tabellone_lista_doc th.codice, table.tabellone_lista_doc th.descrizione{
	font-weight:normal;					
}
table.tabellone_lista_doc .importo{
	text-align:right;					
}					
table.tabellone_lista_doc tr.footer td{
	background-color:#DDD;
	font-weight:bold;
	text-align:right;
}





/* ------------------ RESPONSIVE SCHERMI RIDOTTI ---------------------------------*/
@media (max-width: 900px) {
	#menuleft {
		width: 28%;
	}
	#corpo {
		width: 70%;
	}
}
@media (max-width: 800px) {
	.form-inline {
		flex-direction: column;
		align-items: stretch;
	}
	input {
		max-width: 320px;
	}	
	#menuleft {
		width: 100%;
		margin-right: 0;
	}
	#corpo {
		width: 100%;
		margin-left: 0;
		padding: 3px;
	}
	#bannertop > img {
		margin-right: 0;
	}	
	#istruzioni {
		//clear: both;
		display:none;
	}
	#box_login{
		width:95%;	
	}	
	#contenuto_menuleft {
		display:none;
	}
	#bottone_menuleft {
		cursor: pointer;
		display: block;
		float:left;
	}
	#chiudi_menuleft{
		cursor: pointer;
		display: none;
		float:left;
	}
	.bottone_menu_orizz,
	.button_group {
		display:inline-block;
		white-space: normal;
	}
	.box_testo .immagine_in_tabella{
		max-width: 400px;	
		max-height:200px;
	}	
}

/* ---- TABELLA CON INTESTAZIONE FISSA ----------------*/
table.intestazione_fissa{
	border-collapse: separate;
}
table.intestazione_fissa thead {
	position: sticky;
	top: 0;
	border: 1px solid #CCC;
}
table.intestazione_fissa thead tr:first-child td {
	position: sticky;
	top: 0;
	border: 1px solid #CCC;
	/*background: white;*/
}

/* ------------------ TABELLE RESPONSIVE (come listino MODULAR) ---------------------------------*/
/* ----------- ATTENZIONE !!! DUPLICATO IN vendite/conferma.php -> UNIFORMARE/INTEGRARE!!! ----- */
table.tabella_responsive {
}
table.tabella_responsive tr {
}
table.tabella_responsive th, table.tabella_responsive td {
}
table.tabella_responsive th {
}
@media screen and (max-width: 600px) {
	table.tabella_responsive {
		border: 0;
		width: 100%;
		word-wrap:break-word;		
	}
	table.tabella_responsive thead {
		display: none;
	}
	table.tabella_responsive tr {
		margin-bottom: 10px;
		display: block;
		border-bottom: 2px solid #ddd;
	}
	table.tabella_responsive td {
		display: block;
		text-align: right;
		font-size: 13px;
		border-bottom: 1px dotted #ccc;
		overflow: hidden;
		white-space: normal;
	}
	table.tabella_responsive td:last-child {
		border-bottom: 0;
	}
	table.tabella_responsive td:before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
	}
}
/* ------------------ FINE TABELLE RESPONSIVE (come listino MODULAR) ---------------------------------*/

/* ---------- MODULISTICA -------------*/
.A4 {
	width: 200mm;
	height: 280mm;
}
.A4-orizz {
	width: 280mm;
	height: 200mm;
}
.firma {
	width:400px;
	margin: 20px 20px 20px 20px;
	border-bottom: 2px solid black;
}
.firma img {
}

/* ---------- CONTRATTI -------------*/
.testo_contratto{
	text-align: justify;
	border: solid 1px #CCC;
	padding: 5px;
	margin: 10px;
	max-width:205mm;
}
.testo_contratto p {
	//display: inline;
	margin: 0 6px 0 6px;
	//content: ' ';
	display: block;		
}
.titolo_contratto {
	margin: 10px 0 40px 0;
	font-family: sans-serif;
	font-size: 36px;
	font-weight: 200;
}
.capitolo_contratto{
	margin: 30px 0 5px 0;
	font-family: sans-serif;
	font-size: 20px;
	font-weight: bold; 
}
.titolo_paragrafo_contratto{
	display: inline;
	font-family: sans-serif;
	font-size: 16px;
	font-weight: bold; 
}
#bottone_accettazione_contratto{
	display: block;
	color: green;
	font-size: 18px;
	background: #AAAAAA;
	background-color: #EEE;		
	text-align: center;
	border: 1px solid #999999;
	border-width: 1px 1px 1px;
	border-radius: 15px 15px 15px 15px;
	cursor: pointer;
	padding: 7px;
	width: 100%;
	-webkit-box-shadow: 0 1px 0 rgba(0,0,0,0.03) inset;
	box-shadow: 0 1px 0 rgba(0,0,0,0.03) inset;
}


/* ---------- ANIMAZIONI: MODAL, LOADER (USATO IN tutorial_js_css.php E modifica_dati.php) -------------*/
.contenitore_modal{
	position: fixed;		
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.7);
	z-index: 999;		
}
.loader {
	position: fixed;
	left:50%;
	top:40%;
	z-index: 9999;
	border: 16px solid #CCC;
	border-radius: 50%;
	border-top: 16px solid #EEE;
	border-bottom: 16px solid #EEE;
	width: 90px;
	height: 90px;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}



/* ---------- VERSIONE STAMPABILE -------------*/
@media print {  
	body {
		margin:0;
		padding:0;
	}
	#corpo {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#bannertop,	
	#istruzioni, 
	#menuleft, 
	#titolo_funzione,
	#link_stampa,
	#msg_doc,
	#form_firma,
	#bottom {
		display:none!important;
	}
}

.salto_pagina {
	page-break-after:always;
	margin:0 0 0 0;
}
@media print {  
	.salto_pagina {
		margin:0 0 0 0;
	}
}

/* ---- VERSIONE STAMPABILE DI #tabellone_dati IN modifica_dati - OTTIMIZZATA X LISTINO ****/
@media print {
	#testata_corpopagina .menu_orizzontale, #fuori_modulo, #stampa_quanti_risultati, #stampa_navigatore_pagine {
		display:none;
	}
	#tabellone_dati{
		width: 100%;
		max-width: 100%;
		overflow-x: auto;
		display: block;
	}
	#tabellone_dati td, #tabellone_dati th {
		white-space: nowrap;
	}
	#tabellone_dati td {
		max-width: 70mm; /* max-width: none; */
		overflow: hidden; /* overflow: visibile; */
		text-overflow: ellipsis;
	}
	#tabellone_dati td.prima_colonna {
		display:none;
	}
	#tabellone_dati thead td a {
		display:none; /* rimuove puls.orderby */
	}
	#tabellone_dati td:last-of-type	img {
		display: none; /* rimuove il cestino */
	}
	#tabellone_dati td[data-label="Prezzo"]{
		max-width: 40mm;
	}
	#tabellone_dati td[data-label="Codice"]{
		max-width: 50mm;
	}
	#tabellone_dati td[data-label="Descrizione"]{
		max-width: 110mm;
	}	
}