/*****************************************GENERALI************************************/
:root {
    --font-small: clamp(0.65rem, 0.8vw, 0.8rem);
    --font-base: clamp(0.75rem, 1vw, 0.9rem);
    --font-large: clamp(0.95rem, 1.5vw, 1.1rem);
    --space-xs: clamp(0.15rem, 0.3vw, 0.3rem);
    --space-sm: clamp(0.3rem, 0.6vw, 0.7rem);
    --space-md: clamp(0.6rem, 1.2vw, 1.5rem);
}
html {
	font-family: 'Segoe UI', sans-serif;
	background-color: #000000;
}
body {
  padding: 50px;
  padding-top: 20px;
  font: 14px;
	margin: 0;
  padding: var(--space-md) var(--space-sm);
  font-size: var(--font-base);
}
a {
  color: #00B7FF;
}
table {
  font-family: 'Futura', 'Montserrat', 'Roboto', sans-serif;
  font-size: var(--font-base);
}
th {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1;
  background-color:#76cfe3;
}
th[scope=row] {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: 1;
  vertical-align: top;
  color: inherit;
  background-color: inherit;
  background: linear-gradient(90deg, transparent 0%, transparent calc(100% - .05em), #d6d6d6 calc(100% - .05em), #d6d6d6 100%);
}
table:nth-of-type(2) th:not([scope=row]):first-child {
  left: 0;
  z-index: 3;
  background: linear-gradient(90deg, #666 0%, #666 calc(100% - .05em), #ccc calc(100% - .05em), #ccc 100%);
}

/*-------------------------per impostare bordi curvi sulla celle ad angolo delle tabelle-----------------------------*/
tr:first-child th:first-child{
	border-top-left-radius:5px;
	-webkit-border-top-left-radius: 5px;
}

tr:first-child th:last-child{
	border-top-right-radius:5px;
	-webkit-border-top-right-radius: 5px;
}

tr:last-child td:first-child{
	border-bottom-left-radius:5px;
	-webkit-border-bottom-left-radius: 5px;
}

tr:last-child td:last-child{
	border-bottom-right-radius:5px;
	-webkit-border-bottom-right-radius: 5px;
}

fieldset{
	border-radius:5px;
}
/*------------------------------------------------------------------------------------------------------------------*/


/* Strictly for making the scrolling happen. */

th[scope=row] + td {
  min-width: 24em;
}

th[scope=row] {
  min-width: 20em;
}
/**********************/

sup {
 	color:red;
}

h1 {
	margin:0;
	min-height:0;
	padding:0;
	text-decoration:none;
 	color:white;	
}

h1 a {
	display:block;
	height:100%;
	min-height:40px;
	overflow:hidden;
}

h2 {
	margin:0;
	min-height:0;
	padding:0;
	text-decoration:none;
 	color:white;
}

h3 {
	margin:0;
	min-height:0;
	padding:0;
	text-decoration:none;
 	color:white;	
}

img {
	border:none;
}

form ul {
	font-size:100%;
	list-style-type:none;
	margin:0;
	padding:0;
	width:100%;
}
form li {
	display:block;
	margin:0;
	padding:4px 5px 2px 9px;
	position:relative;
}
form li:after {
	clear:both;
	content:".";
	display:block;
	height:0;
	visibility:hidden;
}
form li div {
	color:#444;
	margin:0 4px 0 0;
	padding:0 0 8px;
}
form li span {
	color:whitesmoke;
	float:left;
	margin:0 4px 0 0;
	padding:0 0 8px;
}
form li div label {
	clear:both;
	color:#444;
	display:block;
	font-size:9px;
	line-height:9px;
	margin:0;
	padding-top:3px;
}
form li span label {
	clear:both;
	color:white;
	display:block;
	font-size:14px;
	line-height:14px;
	margin:0;
	padding-top:4px;
}
form hr {
	display:none;
}
label {
  font-weight: bold;
  font-size: var(--font-small);
  margin-bottom: 0.3em;
  color: #2a2a2a;
}
input, select, textarea {
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--font-small);
	font-family: 'Segoe UI', sans-serif;
  /*border: 1px solid #b0d6e7;*/
  border-radius: 5px;
  background-color: #f5fbfd;
  width: auto;
  /*min-width: 100px;*/
  box-sizing: border-box;
	box-shadow: inset 0 0px 2px 0px #cac7c7 !important;
}
/*************************************************************************************/

/*************************************PER CLASSI**************************************/

.nascosta{
	display: none;
}
/*FORM*/
.form-container {
	display: table;
  background-color: #cceaf7;
  padding: var(--space-md);
  border-radius: 10px;
  /*width: 100%;
  max-width: 800px;*/
  margin: var(--space-md) auto;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.form-row {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: var(--space-sm);
  margin-bottom: var(--space-sm);
}
.form-group {
  display: flex;
  flex-direction: column;
  flex: 1;
	justify-content: center;
	padding: 0 var(--space-sm);
 /*min-width: 140px;*/
}
.form-group img {
  max-height: 40px;
	max-width: 40px;
	object-fit: contain;
	display: block;
}
form li.error {
	background-color:#FFDFDF !important;
	border-bottom:1px solid #EACBCC;
	border-right:1px solid #EACBCC;
	margin:3px 0;
}
form li.error label {
	color:#DF0000 !important;
}
form p.error {
	clear:both;
	color:red;
	font-size:10px;
	font-weight:700;
	margin:0 0 5px;
}
form .required {
	color:red;
	float:none;
	font-weight:700;
}

/**** Guidelines and Error Highlight ****/
form li.highlighted {
	background-color:#fff7c0;
}
form .guidelines {
	background:#f5f5f5;
	border:1px solid #e6e6e6;
	color:#444;
	font-size:80%;
	left:100%;
	line-height:130%;
	margin:0 0 0 8px;
	padding:8px 10px 9px;
	position:absolute;
	top:0;
	visibility:hidden;
	width:42%;
	z-index:1000;
}
form .guidelines small {
	font-size:105%;
}
form li.highlighted .guidelines {
	visibility:visible;
}
form li:hover .guidelines {
	visibility:visible;
}
form li div.left {
	display:inline;
	float:left;
	width:48%;
}
form li div.right {
	display:inline;
	float:right;
	width:48%;
}
form li div.left .medium {
	width:100%;
}
form li div.right .medium {
	width:100%;
}
form li .datepicker {
	cursor:pointer !important;
	float:left;
	height:16px;
	margin:.1em 5px 0 0;
	padding:0;
	width:16px;
}
.form_description {
	border-bottom:1px dotted #ccc;
	clear:both;
	display:inline-block;
	margin:0 0 1em;
}
.form_description[class] {
	display:block;
}
.form_description h2 {
	clear:left;
	font-size:160%;
	font-weight:400;
	margin:0 0 3px;
}
.form_description p {
	font-size:95%;
	line-height:130%;
	margin:0 0 12px;
}
form li.section_break {
	border-top:1px dotted #ccc;
	margin-top:9px;
	padding-bottom:0;
	padding-left:9px;
	padding-top:13px;
	width:97% !important;
}
form ul li.first {
	border-top:none !important;
	margin-top:0 !important;
	padding-top:0 !important;
}
form .section_break {
	font-size:110%;
	font-weight:400;
	line-height:130%;
	margin:0 0 2px;
}
form .section_break p {
	font-size:85%;
	margin:0 0 10px;
}
/*** Success Message ****/
.form_success 
{
	clear: both;
	margin: 0;
	padding: 90px 0pt 100px;
	text-align: center
}

.form_success h2 {
  clear:left;
  font-size:160%;
  font-weight:normal;
  margin:0pt 0pt 3px;
}
/******************FINE FORM******************/

/*CONTENITORI*/
.container {
	margin:0;
	border:0;
	width: 100%;
}
.container2 {
	justify-content: space-around;
	margin:0;
	border:0;
	width: 100%;
}
.error {
	font-weight: bold;
	font-size: 30px;
	text-decoration:none;
	margin:0;
	/*text-align:center;*/
	color: #ff0099;
}
.boxLogoLogin {
	text-align:center;
	float: left;
 	top: 50%;
	left: 50%;
	position: absolute;
	margin-top: -45px;
	margin-left: -390px;
}
.boxCorpoLogin {
	/*position:absolute;*/
	height: 20vh;
  width: 100%;
}
.boxCorpoLogin2{
	/*background-color:#D0E4F5;*/
	height: 85vh;
  width: 32vw;
  padding: 15px;
  border-radius: 15px;
  line-height: 2;
  /*top: 50%;
  left:50%;
  position:absolute;
  margin-top:-50px;
	margin-left:-225px;*/
	margin: auto;
}
.boxError{
	height: 180px;
  width: 100%;
}
.boxError2{
	/*background-color:#d7f2fb;*/
	height: auto;
  width: 50%;
  padding: 15px;
  border-radius: 15px;
  /*line-height: 2;*/
  top: 10%;
  left:15%;
  position:absolute;
  /* margin-top:-50px;
	margin-left:-225px;*/
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
}
.nomeCampoLogin {
	/*font-family: 'Economica', sans-serif;*/
	border:0;
	font-weight: bold;
	/*font-size: 25px;*/
	font-size: clamp(20px, 1.5vw, 25px);
	color: #FFFFFF;
	text-align: left;
	/*margin-left: 3vw;
	width: 120px;
	float: center;*/
}
.campoLogin {
	/*font-family: 'Economica', sans-serif;*/
	font-weight: normal;
	/*font-size: 25px;*/
	font-size: clamp(20px, 3vw, 25px);
	text-align:left;
	/*width: 395px;*/
	width: clamp(300px, 30vw, 400px);
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #cac7c7 !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
	color:#ffffff;
	margin:3px;
	padding:4px;
}
.campoLogin:focus {
	border-color: #6cc4e7;
	caret-color:#6cc4e7;
}

.cerchio{
	width:15px;
	height:15px;
	border-radius:50%;
	border:1px solid black;
}
.button-bar {
  background-color: #6e8ca0;
  padding: var(--space-xs) 0;
	margin: 0 var(--space-sm);
  text-align: center;
  border-radius: 5px;
}
/*****************FINE CONTENITORI*******************/

/*BOTTONI*/
.buttonblack {
	/*font-family: 'Economica', sans-serif;*/
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
	color:#FFF;
	/*font-size:130%;*/
	margin:3px;
	padding:4px;
}
.buttonblack:focus {
	/*font-family: 'Economica', sans-serif;*/
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffd300;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
 	caret-color:#ffd300;
	/*font-size:130%;*/
	margin:3px;
	padding:4px;
}
.buttons:after {
	clear:both;
	content:".";
	display:block;
	height:0;
	visibility:hidden;
}
.buttons {
	clear:both;
	display:block;
	margin-top:10px;
}
input.button_text {
	overflow:visible;
	padding:0 7px;
	width:auto;
}
.buttons input {
	font-size:140%;
	margin-right:5px;
	color: #ffffff !important;
	background: #2a2a2a;
	box-shadow: none;
	text-shadow: none;
	border: 0px;
	padding: 10px 20px;
	border-width: 2px !important;
	border-style: solid !important;
	border-color: #ffffff !important;
	border-radius: 6px;
	border-style: solid !important;
}
.buttonblack:hover {
	background-color: #43f332;
	color: #000000;
	/*font-weight: bold;*/
}
.button-bar button {
  background-color: #e6f7ff;
  border: 1px solid black;
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--font-small);
  margin: 0 var(--space-xs);
  cursor: pointer;
  border-radius: 5px;
  transition: background-color 0.2s;
}
.button-bar button:hover {
  background-color: #d0eef9;
}
.pulsanti {
	text-align: center;
	margin: 2vh;
}
.pulsante{
	/*background:url("/images/unlock.png");
	border:0;
	padding: 0;             
	height: 64px;             
  	width: 128px;
  	font-size: 25px;
  	font-family: 'Economica', sans-serif;
  	text-align: center;
  	border-radius: 15px;*/
  font-size: var(--font-base);
	color: #ffffff !important;
	background: #2a2a2a;
	box-shadow: none;
	text-shadow: none;
	border: 0px;
	padding: 1vh 1vw;
	border-width: 2px !important;
	border-style: solid !important;
	border-color: #ffffff !important;
	border-radius: 6px;
	border-style: solid !important;
}
/****************FINE BOTTONI****************/

/*INDICATORI*/
.wait{
	cursor: wait;
}
.arrows {
	position: absolute;
	clip: rect(6px,9px,12px,0px);
}
.clicca {
	cursor: pointer;
}
/* TOOLTIP */
.arrow {
  border: solid grey;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
}
.arrow:hover, .bollino:hover {
	cursor: pointer;
}
.right {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.left {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}
.up {
	border-color: red;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
.down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.checkmark{
	float:left;
	padding-left: 10px;
	color:green;
}
.checkmark:hover{
	cursor: pointer;
}
.cross{
	float:right;
	padding-right: 10px;
	color:red;
}
.cross:hover{
	cursor: pointer;
}
/************FINE TOOLTIP*************/
/***************FINE INDICATORI**************/

/*HEADER INTESTAZIONE*/
.header {
  text-align: left;
	line-height: 2;
	width: auto;
	height:100px;
	border:0;
	margin: 0 auto;
}
.headerSx {
	color: #FFFFFF;
	font-size: 12px;
  text-align: center;
	margin:0;
	border:0;
	float: left;
}
.headerCenter {
	margin:0;
	border:0;
	width: auto;
	height: 60px;
	float: right;
}
.headerDx {
	color: #ffffff;
	font-size: 12px;
 	text-decoration:none;
 	text-align: center;
	margin:0;
	border:0;
	padding-left:3px;
	width: auto;
	float: right;
}		
.wide {
	clear: left;
}
/****************FINE HEADER*****************/

/*TABELLE*/
.dispari {
	background-color: #4A4A4A;		
}
.pari {
	background-color: #757575;	
}
.tableMin {
	background-color:#ffd300;
	border-collapse: collapse;
	color:black;
}
.tableMax{
	/*background:black;*/
	width: 100%;
	border-collapse: collapse
}
.tableMin thead th{
	color: black;
	width: 100px;
}
.tableMax tbody tr,.tableMax thead tr{
	text-align:center;
	color: whitesmoke;
	/*border: 1px solid whitesmoke;*/
	border-collapse: collapse;
	height: 40px;
}
/*
tbody tr:nth-child(odd){
	background-color: #4A4A4A;
}
*/

/*
tbody tr:hover{
	cursor: pointer;
}*/
.tabelle_righe {
  margin: 0 auto;
  margin-top: var(--space-md);
  overflow-x: auto;
  text-align: center;
  width: 100%;
}
.dynamic-table {
	width: 90%;
	border-collapse: collapse;
	margin: 0 auto;
	border-radius: 15px;
	overflow: hidden;
}
.dynamic-table {
	color: black;
}
.dynamic-table th, .dynamic-table td {
  padding: var(--space-sm);
  text-align: center;
  /*word-wrap: break-word;*/
}
.dynamic-table tbody td {
	color: whitesmoke;
}
/**************FINE TABELLE***************/

/*POPUP*/
.ovl{
 display: none;
 position: absolute;
 top: 0px;
 left: 0px;
 width: 100%;
 height: 100%;
 background-color: black;
 z-index: 1001;
 -moz-opacity: 0.9;
 opacity: .90;
 filter: alpha(opacity=90);
}

.popup {
 display: none;
 position: fixed; 
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	color:#FFF;
	font-size:130%;
	margin:3px;
	padding:4px;
 
 z-index: 1002;
 overflow: auto;
 width: 90%;
}

.title {
 display: table;
 background-color: #ffd300;
 color: black;
 font-weight: bold;
 font-size: clamp(20px, 3vw, 25px);
 padding: 4px;
 margin: auto;
 width: 99%;
 border-radius: 5px;
 -moz-border-radius: 5px;
}
     
.title-close{
 display: table-cell;
 width: 16px;
} 

.loader {
display: none;
position: fixed;
width: 100%;
height: 100%;
z-index: 9999;
background: #d7f2fb url(../img/page-loader.gif) no-repeat center center;
text-align: center;
color: #999;
}

/* Popup SweetAlert2 stile uniforme e adattivo */
.swal2-custom-popup {
  border-radius: 20px;
  font-family: 'Montserrat', Arial, sans-serif;
  box-shadow: 0 0 20px #000;
  font-size: clamp(14px, 1.2vw, 18px);
}

/* Effetto glow per i bottoni SweetAlert2 */
.swal2-confirm, .swal2-cancel {
  border: 2px solid #00aaff !important;
  box-shadow: 0 0 8px #00aaff !important;
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: clamp(14px, 1.2vw, 18px);
}

/*.corpo{
height: 840px;
width:auto;
overflow: auto;	
}*/
/************************************/

/**** Logo Section  *****/
.logo {
	height: 25vh;
}
.logomobile {
	width: 60vw;
}

.datapian {
	width: 70px;
	background-color: transparent;
  border: solid #ffd300 1px;
  color: whitesmoke;
}	
	
.rec:hover {
	cursor:pointer;
}

/**** Form Section ****/
/*.appnitro
{
	font-family:Lucida Grande, Tahoma, Arial, Verdana, sans-serif;
	font-size:small;
}*/

.appnitro li {
	width:82%;
}

* html form li {
	height:1%;
}

* html .buttons {
	height:1%;
}

* html form li div {
	display:inline-block;
}

.clear {
	clear:both;
}

/**** Inputs and Labels ****/
.input-error {
  border: 2px solid red !important;
}

label.description {
	border:none;
	color:white;
	display:block;
	font-size:120%;
	line-height:150%;
	padding:0 0 1px;
}

span.symbol {
	font-size:115%;
	line-height:130%;
}

input.text {
	/*font-family: 'Economica', sans-serif;*/
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	/*border-radius: 6px;
	border-bottom:2px solid #ddd;
	border-left:2px solid;
	border-right:2px solid;
	border-top:2px soliD;*/
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
	color:#FFF;
	font-size:100%;
	margin:3px;
	padding:4px;
}

input.text:focus {
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffd300;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
 	caret-color:#ffd300;
	font-size:100%;
	margin:3px;
	padding:4px;
}

input.file {
	color:#333;
	font-size:100%;
	margin:0;
	padding:2px 0;
}

input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance:textfield; /* Firefox */
		appearance:textfield;
    /*font-family: 'Economica', sans-serif;*/
    
}

textarea.textarea {
	/*font-family: 'Economica', sans-serif;*/
	margin:0;
	padding:1px 0;
	background-color: rgba(255, 255, 255, 0.07);
	/*background:#fff url(../../../images/shadow.gif) repeat-x top;
	border-bottom:1px solid #ddd;
	border-left:1px solid #c3c3c3;
	border-right:1px solid #c3c3c3;
	border-top:1px solid #7c7c7c;*/
	color:#FFF;
	/*font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;*/
	font-size:100%;
	margin:0;
}

select.select {
	/*font-family: 'Economica', sans-serif;*/
	color:#fff;
	font-size:100%;
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffffff;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
 	caret-color:#ffd300;
	font-size:100%;
	margin:3px;
	padding:4px;
}

select.select:focus {
	/*font-family: 'Economica', sans-serif;*/
	color:#fff;
	font-size:100%;
	padding:1px 0 0;
	background-color: rgba(255, 255, 255, 0.07);
	border-color: #ffd300;
	border-radius: 6px;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
 	caret-color:#ffd300;
	font-size:100%;
	margin:3px;
	padding:4px;
}
option {
	/*font-family:'Economica', sans-serif;*/
	background-color:rgba(35,35,35);
	/*color:#ffd300;*/
	color:#6cc4e7;
}
/*
option[value="Conforme"],option[value="1"] {
	color:green;
}

option[value="Non Conforme"],option[value="2"] {
	color:red;
}

option[value="Sospeso"] {
	color:#ffd300;
}
*/
select.option:hover{
	color:#ff80ff;
}
input.currency {
	text-align:right;
}
input.checkbox {
	/*display:block;*/
	height:13px;
	line-height:1.4em;
	margin:6px 0 0 3px;
	width:13px;
}
input.radio {
	display:block;
	height:13px;
	line-height:1.4em;
	margin:6px 0 0 3px;
	width:13px;
}
label.choice {
	color:#444;
	display:block;
	font-size:100%;
	line-height:1.4em;
	margin:-1.55em 0 0 25px;
	padding:4px 0 5px;
	width:90%;
}
select.select[class] {
	/*font-family: 'Economica', sans-serif;*/
	margin:0;
	padding:1px 0;
	background-color: rgba(255, 255, 255, 0.07);
}
*:first-child+html select.select[class] {
	/*font-family: 'Economica', sans-serif;*/
	margin:1px 0;
	background-color: rgba(255, 255, 255, 0.07);
}
.safari select.select {
	/*font-family: 'Economica', sans-serif;*/
	background-color: rgba(255, 255, 255, 0.07);
	font-size:120% !important;
	margin-bottom:1px;
}
input.small {
	width:25%;
}
select.small {
	width:25%;
}
input.medium {
	width:25%;
}
select.medium {
	width:50%;
}
input.large {
	width:99%;
}
select.large {
	width:100%;
}
textarea.small {
	height:5.5em;
}
/*textarea.medium
{
	height:10em;
}*/
textarea.large {
	height:20em;
}
.allegati-container {
  margin-bottom: var(--space-xs);
  overflow: hidden;
  word-wrap: break-word;
  word-break: break-all;
}
.allegato-item {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  margin-bottom: 2px;
}
/* Link per allegati salvati */
.allegato-link {
  color: #007bff;
  text-decoration: underline;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  max-width: 100%;
  font-size: clamp(0.5rem, 0.7vw, 0.7rem);
}

/*****************FINE INPUTS E LABELS*****************/

.no_guidelines .guidelines
{
	display:none !important;
}
.no_guidelines form li
{
	width:97%;
}
.no_guidelines li.section
{
	padding-left:9px;
}

/*** PASSWORD ****/
ul.password{
    margin-top:60px;
    margin-bottom: 60px;
    text-align: center;
}
.password h2{
    color:#DF0000;
    font-weight:bold;
    margin:0pt auto 10px;
}

.password input.text {
   font-size:170% !important;
   width:380px;
   text-align: center;
}
.password label{
   display:block;
   font-size:120% !important;
   padding-top:10px;
   font-weight:bold;
}

/* DIV COME TABELLE*/

div.paleBlueRows {
  /*font-family: 'Economica', sans-serif;*/
  border: 1px solid #FFFFFF;
  width: 95%;
  height: 200px;
  text-align: left;
  border-collapse: collapse;
  height: 20px;
}
.divTable.paleBlueRows .divTableCell, .divTable.paleBlueRows .divTableHead {
  border: 1px solid #FFFFFF;
  /*padding: 3px 2px;*/
}
.divTable.paleBlueRows .divTableBody .divTableCell {
  font-size: 15px;
}
.divTable.paleBlueRows .divTableRow:nth-child(even) {
  background: #D0E4F5;
}
.divTable.paleBlueRows .divTableHeading {
  background: #0B6FA4;
  border-bottom: 5px solid #FFFFFF;
}
.divTable.paleBlueRows .divTableHeading .divTableHead {
  font-size: 17px;
  font-weight: bold;
  color: #FFFFFF;
  text-align: left;
  border-left: 2px solid #FFFFFF;
}
.divTable.paleBlueRows .divTableHeading .divTableHead:first-child {
  border-left: none;
}
/*
.divTableBody{
  position: absolute;
  height: 560px;
  overflow: scroll;
}*/

.paleBlueRows .tableFootStyle {
  font-size: 14px;
  font-weight: bold;
  color: #333333;
  background: #D0E4F5;
  border-top: 3px solid #444444;
}
.paleBlueRows .tableFootStyle {
  font-size: 14px;
}
/* DivTable.com */
.divTable{ display: table; }
.divTableRow { display: table-row; }
.divTableHeading { display: table-header-group;}
.divTableCell, .divTableHead { display: table-cell;}
.divTableHeading { display: table-header-group;}
.divTableFoot { display: table-footer-group;}
.divTableBody { display: table-row-group;}

/*ICONA CARICAMENTO*/

.spinner {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 10vh;
  font-size: 1.2em;
  color: #444;
}
.loader {
  border: 6px solid #eee;
  border-top: 6px solid #3498db;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 1s linear infinite;
  margin-bottom: 10px;
}
@keyframes spin {
  0% { transform: rotate(0deg);}
  100% { transform: rotate(360deg);}
}
/**************FINE ICONA CARICAMENTO**************/

/*********************************************PER ID********************************************/
#containerpop {
	padding-top: 25px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}

#tooltip, #tooltip2 {
	position:absolute;
	z-index: 1005;
	background-color: black;
	border-color: #ffffff;
	border-radius: 6px;
	border-radius: 6px;
	border-bottom:2px solid #ddd;
	border-left:2px solid;
	border-right:2px solid;
	border-top:2px soliD;
	box-shadow: inset 0 0px 2px 0px #2D2D2D !important;
	outline: none;
	border-width: 3px !important;
	transition: all 0.2s linear;
	color: #FFF;
	font-size: 130%;
	margin: 3px;
	padding: 4px;	
}

/**** ERRORS ****/
#error_message {
	background:#fff;
	border:1px dotted red;
	margin-bottom:1em;
	padding-left:0;
	padding-right:0;
	padding-top:4px;
	text-align:center;
	width:99%;
}

#error_message_title {
	color:#DF0000;
	font-size:125%;
	margin:7px 0 5px;
	padding:0;
}

#error_message_desc {
	color:#000;
	font-size:100%;
	margin:0 0 .8em;
}

#error_message_desc strong {
	background-color:#FFDFDF;
	color:red;
	padding:2px 3px;
}
#thetable {
  width: 100%;
  max-width: 1000px;
  border-collapse: collapse;
  margin: 0 auto;
  border-radius: 15px;
  overflow: hidden;
}
#thetable th, #thetable td {
  padding: var(--space-sm);
  border: 2px solid #000000;
  text-align: center;
  word-wrap: break-word;
}

/*********************************SEZIONE MOBILE*********************************/
@media (max-width: 600px) {
  .form-row {
    flex-direction: column;
  }
  .button-bar button {
    width: 100%;
    margin-bottom: var(--space-xs);
  }
  #thetable th,
  #thetable td {
    font-size: var(--font-small);
    padding: var(--space-xs);
  }
}