/*******************//*******************//*******************//*******************/
/*******************//*******************//*******************/
/*** HomeStili.css
//
/* Classi di stile a href */
	a {color:#00008B; text-decoration: none; display:flex;	justify-content: center;  align-items: center;}
	a:hover { color: #822222;background-color: #00FFFF; border:solid 1px; border-radius: 3px;}
	
	html, body {  margin: 0;  padding: 0; height: auto;  overflow-x: hidden; }
		
/* Classi di stile della testata */	
	/* TESTATA IN ALTO */
	.Div_Testata { position: fixed; top: 0; left: 0; width: 100%; min-height: 150px; Max-height: 180px;  height: auto;  z-index: 1000;  
					background-color: #B0C4DE;	background-image: linear-gradient(#B0C4DE, #F5F5F5);  box-sizing: border-box; display: flex;
					flex-direction: column;  align-items: center;  justify-content: center;  padding: 20px;  font-size: 1.2rem;  color: #333;}

	
	
	.Scrittalogo { font-family: 'Georgia', serif; font-size: clamp(2.5rem, 5vw, 4.5rem); color: #00008B;
					text-shadow: 2px 2px 0 #ccc, 	4px 4px 0 #999,		6px 6px 0 #666; 
					letter-spacing: 0.05em;  text-align: center;  line-height: 1.2;  margin: 0 auto; transform: perspective(600px) rotateX(5deg); 
					opacity: 0; animation: fadeInLogo 1.9s ease-out forwards; }
					/* Animazione di entrata */
					@keyframes fadeInLogo {  to { opacity: 1; transform: perspective(600px) rotateX(0deg); }}

	.Div_Menu { width: 100%; display: flex;  flex-wrap: wrap; justify-content: center; align-items: center; border-top: 1px solid #ccc;  border-bottom: 1px solid #ccc;  box-sizing: border-box;}
	.Div_PulsanteMenu { display:flex;justify-content: center;align-items: center;width: auto;min-height: 30px;
						margin: 2px; padding: 2px 7px; background-color: white; border: 1px solid #ccc; border-radius: 4px;  color: #333;
						font-family: 'Work Sans', sans-serif; font-size: 1em; font-weight: 200; color: #000080; text-align:center;  white-space: nowrap;   flex: 0 0 auto;  cursor: pointer;  transition: background-color 0.3s;}
	.Div_PulsanteMenu:hover { background-color: #B0C4DE;}

/* Mobile: impilamento */
	@media (max-width: 600px) {
	  .Div_Menu { justify-content: center;align-items: center; }
	  .Div_PulsanteMenu { flex: 1 1 auto; text-align: center; }
	}
/* Classi di stile del pannello Login*/
	.Div_EseguiLogin {  width:  300px; height: 400px; margin-top:  0px;	background-color: #5F9EA0; background-image: linear-gradient(#5F9EA0, #F5F5F5);
					color: white; display: flex;flex-direction: column;	align-items: center;font-weight: bold; border-radius: 8px;	}

	.Td_TitoloLogin { height:3vh; font-size: 1.5em; font-family:calibri; color:#FFFAFA; background:#567bb1;}
	.Td_Login	 	{ font-family: 'Montserrat', sans-serif; font-size: 1em;  color:#00008B;}
	.Td_Login2	 	{ font-family: 'Montserrat', sans-serif; font-size: 1.1em;  color:#191970;}
	
	.Td_LblWellcome	{ font-family:'Montserrat', sans-serif; font-size: 1.2em;  color:#191970;}
	.Td_Lbl 		{ font-family: calibri; font-size: 1.1em;  	color:#822222;}
	.Td_Lbl2 		{ font-family: calibri; font-size: 1em;  	color:#FF0000;}
	.Input_Login 	{ font-family: Calibri; font-size: 1.3em; color:#00008B; width:150px; }
	.Input_Login:hover 	{background-color: #00FFFF;}
	.Input_Campo 	{ font-family: Calibri; font-size: 1.2em; color:#00008B; width:195px; }
	.Input_Campo:hover 	{background-color: #00FFFF;}
	
	.Input_Ana	{width:95%;height:1.3em; font-family:'Montserrat', sans-serif; font-size: 1.1em; color:#00008B;}
	.Input_Ana:hover 	{background-color: #00FFFF;}
	
	.Pulsante{ width:100px; height:1.4em; font-family:calibri;  color:#00008B; font-size:1.2em; background-color: #DCDCDC; cursor:pointer;}
	.Pulsante:hover { color: #822222;background-color: #00FFFF; border:solid 1px; border-radius: 5px;}					 
/* home page pubblica */
	.Div_Pubblico {position: relative; margin-top: auto; width: 100vw; max-width: 100vw;  overflow-x: hidden;	}
	
	.parallax { height: 100vh;  background-attachment: fixed;  background-position: center;  background-repeat: no-repeat;  background-size: cover;
				transition: background-image 1s ease-in-out;  display: flex;  align-items: center;  justify-content: center;  color: white;  
				text-shadow: 1px 1px 3px rgba(0,0,0,0.7);  text-align: center;  padding: 40px;  box-sizing: border-box;
				font-family: 'Montserrat', sans-serif; font-size: 1.5em;}

	.overlay {  background-color: rgba(0, 0, 0, 0.4); border-radius: 10px;  text-align: center;    }
    .content {  text-align: center;   background-color: #f7f7f7;    }
	
	.Div_Sfondo {width: 100%;min-height: 120vh;margin-top: 150px; display: flex; flex-direction: column;align-items: center;
					background-image: url('../Immagini/SfondoPrivato2.jpg');background-size: cover;background-position: center; background-repeat: no-repeat;
					color: white; padding: 40px 20px; box-sizing: border-box; z-index: 1; overflow-x: visible; /* ✅ permette lo scroll interno se necessario */}

		  
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* classi dei pannelli Cantiere SX e DX */
.Div_ContainerCantieri {  display: flex;  flex-direction: row;  width: 100%;  min-height: 120vh;  box-sizing: border-box;  overflow-x: hidden;  padding: 0;  margin: 0;  }
.Div_CantieriSx {  position: relative;  width: 38vw;  min-height: 120vh;  border: 1px dotted #4682B4;  background-color: rgba(0, 0, 0, 0);  padding: 0px;}
/* Sezione destra */
.Div_CantieriDx {  position: relative;   width: 58vw;  min-height: 120vh;  border: 1px dotted #4682B4;  background-color: rgba(0, 0, 0, 0);  padding: 0px;
					box-sizing: border-box;  overflow-y: auto;  display: flex;  flex-direction: column;  align-items: center;  margin-left:1vw;}
.Div_Cantiere { width: 100%; min-height:40vh;  max-height: 120vh; overflow-y: auto;   overflow-x: hidden;          
				margin-top: 0;  border-radius: 10px;  border: 0.5px dotted #FFFF00;  background: linear-gradient(45deg, #B0C4DE, #B0E0E6);  padding: 2px;  box-sizing: border-box;}
	.TableCantiere {width: 100%;  background: linear-gradient(45deg, #F0FFFF, #B0C4DE);	  border-radius: 8px;	  border-collapse: separate;
					border-spacing: 2px 2px;	  box-shadow: 0 4px 8px rgba(0,0,0,0.2);	  color: #fff;	  font-family: 'Montserrat', sans-serif;	  box-sizing: border-box; }
			/* Velatura sovrapposta */
			.Velatura {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;  background-color: rgba(0,0,0,0.1); /* velatura chiara */
						 z-index: 10;  display: flex;  justify-content: center;     /* centrato orizzontalmente */  align-items: flex-start;     /* spostato verso l’alto */  margin-top: 0px;           /* distanza dal bordo superiore */}
		.Velatura2 { position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; background-color: rgba(0,0,0,0.1);
					z-index: 10; display: flex; justify-content: center; align-items: flex-start; box-sizing: border-box;}
	.Spinner {  width: 50px;  height: 50px;  border: 6px solid rgba(0, 0, 0, 0.1);
				border-top: 6px solid #4682B4;  border-radius: 50%;  animation: spin 4s linear infinite; /* ← più lento: 2 secondi per giro */   margin-top: 200px;  }
	@keyframes spin { 0%   { transform: rotate(0deg); } 100% { transform: rotate(360deg); }}
	.InputContratti {height:4vh; font-size:1.1em; background-color: #FFFFF0;border:0;color:#000080;}
	.InputContratti:hover {background-color: #E0FFFF; border:dotted 1px}

/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* classi del pannello anagrafica */
	.Div_Anagrafica {display: flex; flex-direction: column; align-items: center;  height: 96vh;  overflow-x: hidden;  overflow-y: hidden;   
						width: 95vw; box-sizing: border-box; border: 2px dotted #708090; border-bottom: 4px solid #708090;  margin-top: 5px;}

	.Div_TitoloAna  {display: flex;	flex-direction: column; align-items: center; height: 5vh; width: 100%; border-bottom: 1px dotted #FFFF00; margin-top: 2px; }
	
	.Div_GrigliaAna { display: block;  max-width: 100%;  height: 70vh;  overflow: auto;  border: 0.5px dotted #FFFF00;margin-top: 10px;  
						background: linear-gradient(45deg, #B0C4DE, #B0E0E6);  padding: 10px;  box-sizing: border-box;}
	
	
	.tableAna { width: 100%; min-width: 800px; /* forza lo scroll orizzontale su schermi piccoli */
				border-collapse: separate;  border-spacing: 2px 2px;  font-family: 'Montserrat', sans-serif;  font-size: 1em;}
		
	@media (max-width: 768px) {
		  .Div_GrigliaAna 	{ height: 60vh; width:130vw;}
		  .tableAna 		{ font-size: 0.9em; }
		  .Div_Anagrafica {display: flex; flex-direction: column; align-items: left; }
		  
		}
	@media (max-width: 768px) {
	  .titolo-pratiche-container {
		flex-direction: column;
	  }
	}
	@keyframes lampeggia {
	  0%   { opacity: 1; }
	  50%  { opacity: 0; }
	  100% { opacity: 1; }
	}

	/* Griglia  */
	.Lbl_AnaT { cursor:pointer;	position: sticky; top: 0; z-index: 1; 		padding: 2px 5px; 
			   height: 1.1em; font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 400; color: #000080;background-color: #B0E0E6;	border: 1.5px dotted #FFFF00;text-align: center;	}
	.Lbl_Ana { cursor:pointer;	position: sticky; top: 0; z-index: 1; 		padding: 2px 5px; 
			   height: 1.1em; font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 400; color: #000080;background-color: #F5FFFA;	border: 1.5px dotted #FFFF00;text-align: center;	}
	.Td_Ana2 {  height: 1em; font-family: calibri; font-size: 1em;  font-weight: 400; color: #000000;  }	
	.Td_Ana {  height: 1.1em; font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 400; color: #000080;  border: 1.5px dotted #FFFF00;}
	.Tr_Ana:nth-child(even) {  background-color: #FFF0F5;}
	.Tr_Ana:hover {  background-color: #90EE90;cursor:pointer}
	
	/* tag chiaro scuro */  
	.th_cs {font-family: Consolas, monospace; font-size: 0.7em; color: #000080; border: 0.2px dotted #000000;}
	.th_cs th:nth-child(odd) {background-color: #f2f2f2; }
	.th_cs th:nth-child(even) {background-color: #ffffff;}
	
	/* -- */
	  
	.Td_DataScad {  padding: 0px 5px;  font-size: 1.15em;  font-family: Calibri, sans-serif;  border: 1px solid #ccc;  color: #333;}
	.Td_EseguitaSN  {padding: 0px 5px;  font-size: 1.15em;  font-family: Calibri, sans-serif;  border: 1px solid #ccc;  color: #000000;}
	/* pratiche data scadenza colorata secondo i casi  */
	.Td_DataScad.attesa-esecuzione { background-color: #FFD700; color: #d9534f;}
	.Td_DataScad.attesa-completata {  background-color: #fff3cd; color: #00008B;}
	.Td_DataScad.scaduta-non-eseguita { background-color: #dc3545;  color: #fff;font-weight: bold;}
	.Td_DataScad.scaduta-eseguita {background-color: #9ACD32; color: #00008B;font-weight: bold;}
	/* Modifica Descrizione file automezzi*/
	.overlayDescrizione2 { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.5); display: none; justify-content: center; align-items: center;	  z-index: 9999;}
	.contenutoDescrizione2 {background-color: #fff; padding: 10px; border-radius: 8px; max-width: 600px;width: 90%; box-shadow: 0 0 10px rgba(0,0,0,0.3);  z-index: 10000;}
	
	/* freccia ordina tabella*/
	.freccia {  margin-left: 6px;  font-size: 0.8em;  transition: transform 0.2s ease;  display: inline-block;}
	.freccia.asc::after {  content: "▲";  color: #FFFF00;}
	.freccia.desc::after { content: "▼";  color: #FFFF00;}
	.filtroTabella { margin-bottom: 10px; padding: 6px; width: 100%;  max-width: 300px;  font-size: 1em;}
	.evidenziato {  background-color: yellow;  font-weight: bold;  }
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --classi del pannello anagrafica */
				
	.Div_InsertAna {  display: block;  max-width: 100%;  height: 65vh; overflow-y: auto; margin-top: 10px;  padding: 20px;
		  box-sizing: border-box;  background: linear-gradient(to bottom right, #dbe9f4, #b0c4de);  border: 1px solid #6c8ea4;
		  border-radius: 8px;  box-shadow: 0 2px 8px rgba(0,0,0,0.1);		}
		@media (max-width: 768px) {
			.Div_InsertAna {height: 50vh; padding: 15px;  }
		}
		
	.Div_RigheInsert { display: flex; align-items: center;
		  gap: 0.5rem; /* Riduce lo spazio tra label e input */
		  width: 100%;  max-width: 600px;
		  margin: 2px auto;             /* Spazio verticale minimo tra righe */
		  padding: 4px; /* Altezza interna più compatta */
		  background-color: #fdf6e3; border: 1px solid #eee; border-radius: 6px; box-shadow: inset 0 0 3px rgba(0,0,0,0.05);}

	.LabelInsert { display: inline-block;
		  width: auto;               /* Adatta la larghezza al contenuto */
		  min-width: 60px;           /* Garantisce una larghezza minima */
		  margin-right: 8px;         /* Spazio tra label e input */
		  padding: 4px 0;            /* Padding verticale */
		  text-align: left;          /* Allinea il testo a sinistra */
		  font-family: 'Arial', sans-serif;  font-size: 16px;  font-weight: 500; color: #333; }
	.InputInsert { flex: 1; padding: 4px 6px; font-family: 'Montserrat', sans-serif; font-size: 1rem; border: 2px solid #ccc; border-radius: 4px; transition: border-color 0.3s ease;  width:20em; }
	.InputInsert:focus { border-color: #0078D4; outline: none; background-color: #00FFFF;}
	.freccia.asc::after { content: " ▲";font-size: 0.8em; }
	.freccia.desc::after { content: " ▼";font-size: 0.8em; }
	.evidenziato { background-color: yellow;font-weight: bold; }
	
	#tabellaAna tbody tr:hover {
		  background-color: #F0E68C;
		  cursor: pointer;
		  transition: background-color 0.3s ease;
		}
	@keyframes fadeIn {  from { opacity: 0; } to { opacity: 1; }}
	#tabellaAna tbody tr { animation: fadeIn 0.4s ease;	}


/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/

		
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
		.Div_RecordAna { margin: auto; max-height: 700px; overflow-y: auto; padding: 20px; background-color: #ffffff; border-radius: 12px; box-shadow: 0 0 10px rgba(0,0,0,0.1);}
		/* Scrollbar personalizzata (solo per browser WebKit come Chrome, Edge) */
		.Div_RecordAna::-webkit-scrollbar { width: 8px;}
		.Div_RecordAna::-webkit-scrollbar-track { background: #f0f0f0; border-radius: 8px;}
		.Div_RecordAna::-webkit-scrollbar-thumb { background-color: #778899; border-radius: 8px; border: 2px solid #f0f0f0;}
		.IntestazioneRecord { font-size: 1.3em; background-color: #778899; color: white; padding: 2px 4px; border-radius: 8px; display: inline-block;  margin-bottom: 20px;}
		.Div_RigheRecordAna { display: flex; align-items: center; gap: 2px; margin-bottom: 14px;}
		.PulsanteModifica {  background-color: #4a90e2;  color: white;  border: none;  padding: 5px 10px;  border-radius: 6px;  cursor: pointer; transition: background-color 0.3s;}
		.PulsanteModifica:hover { background-color: #357ab8;}
		.InputRecordAna {font-family: 'Montserrat', sans-serif; font-size: 1rem; padding: 5px 10px; border: 1px solid #ccc; border-radius: 6px; background-color: #f9f9f9;text-align: left; flex-grow: 1;}
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
	/* Popup ??? */
			.popup {  display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5); justify-content: center;
						align-items: center;  z-index: 1000;}
			.popup-content {position: relative;  background-color: #ffffff;  padding: 20px;  border-radius: 12px;  box-shadow: 0 0 15px rgba(0,0,0,0.3);
							width: 300px; text-align: center;}
			.popup-content h3 {  margin-bottom: 15px;  color: #333;}
			.popup-content input {font-family: 'Montserrat', sans-serif; font-size: 1rem;  width: 90%;  padding: 4px;  margin-bottom: 12px;
									border: 1px solid #ccc;  border-radius: 6px;}
			.popup-content button {  background-color: #28a745; color: white; border: none; padding: 8px 16px;  border-radius: 6px;  cursor: pointer;}
			.popup-content button:hover { background-color: #218838;}
			.close { float: right; position: absolute; top: 12px; right: 16px;  font-size: 2.2em; font-weight: bold; cursor: pointer;
					color: #888; transition: color 0.3s ease, transform 0.2s ease;}
			.close:hover { color: #000; transform: scale(1.2); }

/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
		/* popup Modifica Descrizione  */
				.overlayDescrizione {  display: none;  position: absolute;  top: 0; left: 0;  width: 100%; height: 100%;  background: rgba(0, 0, 0, 0.5);
									justify-content: center;  align-items: center;  z-index: 1000;}
		/* Contenuto centrato del popup */
				.contenutoDescrizione {  margin-top:-200px;  background: #778899;  border-radius: 10px;  padding: 10px;
											width: 400px;  box-shadow: 0 0 15px rgba(0,0,0,0.3);  font-family: Arial, sans-serif;  animation: fadeIn 0.3s ease-in-out;}
		/* Animazione */
				@keyframes fadeIn { from { opacity: 0; transform: scale(0.95); }  to { opacity: 1; transform: scale(1); }}

		/* Bottoni */
				.bottoniDescrizione {margin-top: 15px;  text-align: center;}
				.btnSalvaDescrizione,.btnChiudiDescrizione { padding: 8px 14px;  border: none;  border-radius: 5px;  font-weight: bold;  cursor: pointer;   color: white;}
				.btnSalvaDescrizione {  background-color: #28a745; }
				.btnChiudiDescrizione {  background-color: #dc3545;  margin-left: 10px;}
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/

/* CONTENUTO PRINCIPALE CHE SCORRE SOTTO LA TESTATA */
	
	
	/* Stile PRATICHE */
	.Div_UtentiPratiche { width: 100%;  max-width: 1000px;  min-height:105vh; margin: 0 auto;  padding: 10px;  box-sizing: border-box;  
							background: linear-gradient(45deg,#20B2AA, #B0C4DE);
							border: 2px dotted #708090; border-bottom: 4px solid #708090;  margin-top: 5px;
							height:105vh !important;height /**/:  105vh; overflow:auto;}	

	.Div_Lavorazioni { width: 100%;  max-width: 1000px;  min-height:105vh; margin: 0 auto;  padding: 10px;  box-sizing: border-box;  
							background: linear-gradient(45deg, #5F9EA0, #B0E0E6);
							border: 2px dotted #708090; border-bottom: 4px solid #708090;  margin-top: 5px;
							height:105vh !important;height /**/:  105vh; overflow:auto;}	
	
	.Div_GrigliaPratiche { display: block;  width: 100%; max-width: 100%;  height: 60vh;  overflow: auto;  border: 0.5px dotted #FFFF00;margin-top: 10px;  
						background-color: #E0FFFF;  padding: 10px;  box-sizing: border-box;}
	.titolo-pratiche { width: 99%; margin-top: 10px; padding: 5px; background: linear-gradient(45deg, #F0FFFF, #B0C4DE);  border-radius: 8px;
						box-shadow: 0 4px 8px rgba(0,0,0,0.2); color: #fff; font-family: 'Montserrat', sans-serif; box-sizing: border-box; 
						overflow-x: hidden; text-align: left;}
	.titolo-Sub { width: 99%; margin-top: 10px; padding: 5px; background: linear-gradient(45deg, #B0C4DE, #D3D3D3);  border-radius: 8px;
						box-shadow: 0 4px 8px rgba(0,0,0,0.2); color: #fff; font-family: 'Montserrat', sans-serif; box-sizing: border-box; 
						overflow-x: hidden; text-align: left;}
	/* Tabella */
	.tabella-pratiche { min-width: 600px; width:100%; border-collapse: collapse;  background-color: #5F9EA0;  border-radius: 10px;
						box-shadow: 0 0 15px rgba(0,0,0,0.15); table-layout: fixed; box-sizing: border-box; word-break: break-word;	}
	.Titolospan{ font-family: 'Work Sans', sans-serif; font-size: 1.25em;  font-weight: 400; text-align: left;
							 background: linear-gradient(to right, #DC143C, #000080);
							-webkit-background-clip: text;
							-webkit-text-fill-color: transparent;}
	.Titolospan2{ font-family: 'Work Sans', sans-serif; font-size: 1.25em;  font-weight: 400; text-align: left;
							 background: linear-gradient(to right, #DC143C, #000080);
							-webkit-background-clip: text;
							-webkit-text-fill-color: transparent;}
	/* Celle */
	.PraTh {  padding: 8px;  font-size: 0.95em;  color: #000080;  background-color: #ffffff;  border: 1px solid #822222;  word-break: break-word;
				overflow-wrap: break-word;  white-space: normal;  vertical-align: middle;}

	/* Pulsanti */
	.link-back { font-size: 22px;  color: #fff;  background-color: #28a745;  padding: 6px 12px;  border-radius: 4px;  display: inline-block;
				transition: transform 0.2s ease;  white-space: nowrap;  text-decoration: none;}
	.link-back:hover {  transform: scale(1.1);  color: #ffd700;}
	
	/* responsività  */
		@media (max-width: 768px) { .Div_UtentiPratiche {    width: 95vw;    max-width: 100%;    padding: 5px;    margin: 0 auto;  }}
		@media (max-width: 768px) { .Div_Lavorazioni {    width: 95vw;    max-width: 100%;    padding: 5px;    margin: 0 auto;  }}
		@media (max-width: 768px) { .contenitore-body {    width: 95vw;    max-width: 100%;    padding: 2px;	 margin: 0 auto;  }
									.titolo-pratiche {    width:96%;    padding: 12px;  }
									.titolo-Sub	 {    width:96%;    padding: 12px;  }
									
									.tabella-pratiche {    width: 100%;	   min-width: unset;  table-layout: auto;  }
									.PraTh {  font-size: 0.85em;    padding: 6px;    text-align: center;  }
									.link-back {    font-size: 18px;    padding: 5px 10px;    margin-top: 5px;  }
									.link-back2 {    font-size: 18px;    padding: 5px 10px;    margin-top: 5px;  }}

	.Table_adeTd { text-align: left;  font-family: 'Work Sans', sans-serif; font-size: 1.15em;  font-weight: 400; color: #000080; background-color: #E6E6FA;  border: 1.5px solid;}
	.Table_adeTd:hover { background-color: #F0E68C; border: 2px solid; border-radius: 7px; }
	.Table_RifTh { height: 1.1em;  font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 300; color: #000080; background-color: #ffffff;  border: 1.5px dotted;}
	.Table_RifTh:hover { background-color: #F5F5DC; border-radius: 10px;}
	.Table_RifTd {cursor:pointer; height: 1.8em;  font-family: 'Work Sans', sans-serif; font-size: 1.15em;  font-weight: 400; color: #000080; background-color: #ffffff;  border: 1px solid #822222;}
	.href-File   {text-align:left; height: 1.6em; font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 400; color: #000000; background-color: #ffffff;  border: 1px dotted #822222;text-align: left;  padding: 5px; }
	
	
	/* Altre celle Celle */   
	
	
	.Table_adeTh { text-align: right; font-size: 0.9em; color: #822222; background-color: #E6E6FA;  border: 1px dotted #822222;}
	.PraTd:hover { background-color: #F0E68C; border: 2px dotted; border-radius: 7px; }

/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
		/*-- CSS Mopup Modifica Valuta */
		.inputCampo_Valuta[type="number"] {
			height:5vh; width:12vw; font-family:'Montserrat', sans-serif; font-size: 1.2em; color:#00008B; 
		  text-align: right;
		  font-weight: bold;
		  background-color: #f9f9f9;
		}
			/* Per Chrome, Safari, Edge */
			input[type=number]::-webkit-inner-spin-button,
			input[type=number]::-webkit-outer-spin-button {
			  -webkit-appearance: none;
			  margin: 0;
			}

			/* Per Firefox */
			input[type=number] {
			  -moz-appearance: textfield;
			}
			
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/*-- CSS Mopup Modifica Data */
		.overlayPopup_modSingDta {display: none;position: fixed;top: 0; left: 0;width: 100%; height: 100%;background: rgba(0,0,0,0.6);z-index: 9999;}
		.boxPopup_modSingDta { position: fixed; top: 60%; left: 50%; transform: translate(-50%, -50%);  background: linear-gradient(45deg, #D3D3D3, #FFFAF0); border: 2px dotted #708090; padding: 30px;
								border-radius: 12px; box-shadow: 0 0 20px rgba(0,0,0,0.4); text-align: center; font-family: 'Segoe UI', sans-serif;}
		.titoloPopup_modSingDta { font-size: 22px; margin-bottom: 20px; color: #333;}
		.inputCampo_modSingDta {width: 90%;font-size: 18px;padding: 12px;border-radius: 6px;border: 1px solid #ccc;box-sizing: border-box;}
		.gruppoBottoni_modSingDta {margin-top: 20px;}
		.btnSalva_modSingDta, .btnExit_modSingDta { padding: 10px 16px; margin: 5px; font-size: 14px; border: none; border-radius: 6px; cursor: pointer;  font-weight: bold;}
		.btnSalva_modSingDta { background-color: #28a745; color: white;}
		.btnExit_modSingDta { background-color: #dc3545; color: white;}
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/*-- CSS Poopup Modifica Ricorrenze da Anagrafica  */
	.PopupAssegna_Sfondo {margin-top:20vh; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); display: flex;
							justify-content: center;align-items: flex-start; z-index: 9999;  padding-top: 20vh; overflow: auto;}
	.PopupAssegna_Contenitore {  background-color: #ffffff;  border: 2px solid #28a745;  border-radius: 10px;  padding: 20px;  width: 100%;
								max-width: 450px;  max-height: 45vh;  overflow-y: auto;  box-shadow: 0 0 20px rgba(0,0,0,0.3);  font-family: Arial, sans-serif;}
	/* Tabelle */
	.PopupAssegna_Tabella {  width: 100%;  border-collapse: collapse;  table-layout: auto; }
	/* Celle */
	.PopupAssegna_Tabella th,.PopupAssegna_Tabella td {  border: 1px solid #ccc;  padding: 10px; background-color: #f8f9fa;
														color: #333;  font-size: 1rem;  word-wrap: break-word;  overflow-wrap: break-word;}
	/* Responsive */
		@media screen and (max-width: 768px) { 	.PopupAssegna_Contenitore {    max-width: 95vw;    max-height: 95vh;    padding: 15px;  }
												.PopupAssegna_Tabella {  display: block;   overflow-x: auto; }
												.PopupAssegna_Tabella thead,.PopupAssegna_Tabella tbody {   display: table;    width: 100%;  }
												.PopupAssegna_Tabella th,  .PopupAssegna_Tabella td {   font-size: 0.9rem;  padding: 8px; }}
	/* Animazione */
		@keyframes popupFadeZoom {0% { opacity: 0; transform: scale(0.95);  } 100% {  opacity: 1;  transform: scale(1);  }}
	
	.Input_Ana2	  {width:95%;height:1.3em; font-family: 'Work Sans', sans-serif; font-size: 1.1em;  font-weight: 400; color:#00008B;}
	.Input_Ana2:hover 	{background-color: #FFD700;}

	/* Applica animazione al contenitore */
	.PopupAssegna_Contenitore {	animation: popupFadeZoom 0.4s ease-out;}
	.PopupAssegna_Dati tbody tr:nth-child(odd) { background-color: #f0f0f0;}
	.PopupAssegna_Dati tbody tr:nth-child(even) {  background-color: #ffffff;}
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
	.contenitoreVelato_Ana { margin-top:10vh;  position: fixed;  top: 0;  left: 0;  width: 100vw;  height: 100vh;  background: rgba(0, 0, 30, 0.60); /* più trasparente */
							z-index: 9999;  display: flex;  justify-content: center;  align-items: center;}

	@media screen and (max-width: 768px) { 	.bloccoInterno_Ana {    max-width: 85vw; min-width: 85vw;    max-height: 95vh;    padding: 10px;  }}
	.bloccoInterno_Ana {  width: 40vw; height: 60vh; background: linear-gradient(45deg, #D3D3D3, #FFFAF0); border: 2px dotted #708090;
							border-bottom: 4px solid #708090;  padding: 20px;  box-sizing: border-box;  box-shadow: 0 0 12px rgba(0,0,0,0.3);  overflow: auto;}
	
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* controlli sulle stampe */ 
	.toggle-trigger { display: block; text-align: center; font-weight: bold; font-size: 16pt; padding: 10px 0; border-bottom: 1px solid #ccc; cursor: pointer;}
	.toggle-content { text-align: left; padding: 10px 20px; border-bottom: 1px solid #ccc; font-size: 14pt; display: none;}
	/* Escludi gli span nascosti dalla stampa */
	@media print { .toggle-trigger[data-hidden="true"] {display: none !important; }
					.print-icon { display: none; } body { margin: 0mm; }.Titolo { font-size: 20pt; }.Sottotitolo { font-size: 12pt; }}
		@page {
			  counter-increment: page;
			  @bottom-center {
				content: "Pagina " counter(page);
			  }
			}
		@page {
		  @bottom-center {
			content: "Pagina " counter(page);
			vertical-align: top; /* Sposta il contenuto verso l'alto del margine */
			padding-top: 2em;     /* Aggiunge spazio sopra */
		  }
		}
	
	.Prn_Titolo 	{ font-family: 'Work Sans', sans-serif; font-size: 1.2em;  	color: #822222; text-align:center; border: 0.5px solid; background-color:#B0E0E6;}	
	
	.Prn_Left 		{ font-family: 'Work Sans', sans-serif; font-size: 1em;  	color: #822222; text-align:right;  border: 0.5px solid; background-color:#B0E0E6;}	
	.Prn_Right 		{ font-family: 'Work Sans', sans-serif; font-size: 1.1em;  	color: #000080; text-align:left;	 border: 0.5px solid; }	

	.Prn_Left2 		{ font-family: 'Work Sans', sans-serif; font-size: 0.9em;  	color: #822222; text-align:right;  border: 0.5px solid; background-color:#B0E0E6;}	
	.Prn_Right2		{ font-family: 'Work Sans', sans-serif; font-size: 1em;  	color: #000080; text-align:left;	 border: 0.5px solid; }	
	
	.Prn_TitoloGriglia	{ font-family: 'Work Sans', sans-serif; font-size: 0.9em;  	color: #822222; text-align:center; border: 0.5px solid; background-color:#B0E0E6;}	
	.Prn_CorpoGriglia	{ font-family: 'Work Sans', sans-serif; font-size: 1.05em;  color: #000080; text-align:center; border: 0.5px solid; }	
	
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------------------------------------------------------------------*/


	/* Freccia ordinamento griglia Immobili */
		.arrow::after {
		  content: '';
		  display: inline-block;
		  margin-left: 6px;
		  border: 6px solid transparent;
		  border-top-color: #333;
		  vertical-align: middle;
		}

		th.ordinatoAsc .arrow::after {
		  border-top-color: #28a745;
		  transform: rotate(180deg);
		}

		th.ordinatoDesc .arrow::after {
		  border-top-color: #28a745;
		}

		/* Evidenzia intestazione ordinata */
		th.ordinatoAsc,
		th.ordinatoDesc {
		  background-color: #e6ffe6;
		  color: #155724;
		  font-weight: bold;
		}
/* Raccolta foto imobili  */
/* Griglia contenitore */
.photo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: center;
  padding: 20px;
  background-color: #f8f9fa;
}

/* Singolo elemento foto */
.photo-item {
  background: #ffffff;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 10px;
  width: 140px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  text-align: center;
  transition: transform 0.2s ease;
}

.photo-item:hover {
  transform: scale(1.03);
}

/* Immagine anteprima */
.photo-item img {
  width: 120px;
  height: 120px;
  object-fit: cover;
  border-radius: 5px;
  cursor: pointer;
  transition: transform 0.2s ease;
}

.photo-item img:hover {
  transform: scale(1.05);
}

/* Azioni sotto l'immagine */
.photo-actions {
  margin-top: 8px;
}

.photo-actions a {
  display: inline-block;
  margin: 4px;
  font-size: 0.85em;
  color: #007bff;	
  text-decoration: none;
  transition: color 0.2s ease;
}

.photo-actions a:hover {
  color: #0056b3;
}

/* Lightbox semplice */

.lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.lightbox img {
  max-width: 90%;
  max-height: 90%;
  border-radius: 10px;
  box-shadow: 0 0 20px rgba(255,255,255,0.3);
}
th.attivo {
  background-color: #fff8b3; /* giallino */
  color: #0044cc;            /* blu intenso */
  transition: background-color 0.3s ease, color 0.3s ease;
}


.overlayPopup_modSing { display: none;position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6);z-index: 1000;}
.titoloPopup_modSing {margin-bottom: 20px;font-size: 20px;color: #333;}
.inputCampo_modSing { width: 95%;padding: 12px;font-size: 16px;margin-bottom: 20px; border: 1px solid #ccc;	 border-radius: 6px; box-sizing: border-box;}
.gruppoBottoni_modSing {  margin-top: 20px;  display: flex; justify-content: space-between;  gap: 10px; }
.btnSalva_modSing, .btnExit_modSing { padding: 10px 16px; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; font-size: 14px;}
.btnSalva_modSing { background-color: #4CAF50; color: white;}
.btnSalva_modSing:hover {background-color: #00FFFF; color: #000000;}

.btnExit_modSing { background-color: #f44336; color: white;}
.boxPopup_modSing {position: fixed;top: 50%; left: 50%;transform: translate(-50%, -50%); background: linear-gradient(45deg, #D3D3D3, #FFFAF0); border: 2px dotted #708090;width: 560px;padding: 25px;border-radius: 12px;  box-shadow: 0 0 20px rgba(0,0,0,0.3);  font-family: 'Segoe UI', sans-serif;  text-align: center;}
	
	#Uno {
	position: absolute;   /* si sovrappone al genitore */
	top: 10vh;            /* distanza dall’alto */
	left: 20%;            /* centrato orizzontalmente */
	transform: translateX(-50%);
	width: 60%;
	background: #fff;
	border-radius: 8px;
	padding: 1em;
	z-index: 100;         /* sopra al resto */
	box-shadow: 0 4px 12px rgba(0,0,0,0.3);
	}