@CHARSET "ISO-8859-1";
/*
@font-face{
	font-family:'Abel';src:url(../fonts/Abel-Regular.ttf);
}
*/
/*@media screen and (max-device-width : 320px)
{
  body or yourdiv element
  {
    font:<size>px/em/cm;
  }
}
@media screen and (max-device-width : 1204px)
{
  body or yourdiv element
  {
    font:<size>px/em/cm;
  }
}*/

img.w-logo {
    width: 60%;
  }

@media only screen and (max-width: 768px) {
  /* For mobile phones: */
 img.w-logo {
    width: 150%;
  }
}
@media only screen and (max-width: 576px) {
.easy-autocomplete {
	width:80%;
}
}

body {
	font-family: 'Titillium Web', sans-serif;
	font-size: 1.5em;
}
body #nav-assistenti{
	font-size: 0.6em;
}
/* Disattiva ::after quando la label ha questa classe */
label.no-after::after {
    content: none !important;
}

.required > label::after {
	color: #ff0000;
	content: "*";
	font-size: 100%;
	position: relative;
	top: 2px;
	margin-left:1px;
}

.cursor-pointer {
	cursor:pointer;
}


.btn-circle.btn-xl {
    width: 70px;
    height: 70px;
    padding: 10px 16px;
    border-radius: 35px;
    font-size: 24px;
    line-height: 1.33;
}

.btn-circle {
	display:inline-block;
    width: 25px;
    height: 25px;
    padding: 4px 0px;
    border-radius: 12px;
    text-align: center;
    font-size: 16px;
    line-height: 1.2;
    background:white;
}




.nav-link {
	cursor: pointer;
}

/*
.nav-link {
	color:black;
	font-weight:bold;
	transition:none;
}

.nav-link:hover {
	 border:none;
	 
}

.nav-link:focus,.nav-link:focus-visible,.nav-link:visited {
	 border:none;
	 
}

.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active  {
  background: white;
  border:none;
  border-bottom: 2px solid #0066cc;
  color:#0066cc;
}
*/

#table-wrapper {
  overflow-x: auto;

  /* Firefox */
  scrollbar-width: auto; /* o 'thin' se vuoi poco spessore */
  scrollbar-color: #007bff #f0f0f0;
}
    
/* WebKit (Chrome, Edge, Safari) */
#table-wrapper::-webkit-scrollbar {
  height: 20px; /* << spessore orizzontale aumentato */
}
    
#table-wrapper::-webkit-scrollbar-track {
  background: #f0f0f0;
}
    
#table-wrapper::-webkit-scrollbar-thumb {
  background-color: #007bff;
  border-radius: 10px;
  border: 3px solid #f0f0f0;
}

  /* Ombre laterali */
.shadow-left,
.shadow-right {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 20px;
  pointer-events: none;
  z-index: 2;
}

.shadow-left {
   position: fixed;
  top: 0;
  left: 0;
  width: 16px;
  height: 100vh;
  pointer-events: none;
  box-shadow: inset 8px 0 10px -6px rgba(0, 0, 0, 0.3);
  z-index: 9998;
}

.shadow-right {
  position: fixed;
  top: 0;
  right: 0;
  width: 16px; /* larghezza ombra */
  height: 100vh; /* tutta l'altezza visibile */
  pointer-events: none; /* clic passano attraverso */
  box-shadow: inset -8px 0 10px -6px rgba(0, 0, 0, 0.3); /* ombra interna a sinistra */
  z-index: 9998;
}

    /* Icona freccia visibile sempre in basso a destra */
.scroll-hint {
  position: fixed;          /* era absolute */
  right: 15px;
  bottom: 20px;             /* puoi regolare */
  font-size: 18px;
  color: #007bff;
  background: white;
  padding: 4px 6px;
  border-radius: 50%;
  z-index: 9999;            /* alto per stare sopra la tabella */
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);  /* opzionale */
  cursor: pointer;
}
/* Non necessario se già avvolta da un div scrollabile */
.dataTables_wrapper {
  overflow-x: auto;
}

.overlay {
  position: fixed; /* Sit on top of the page content */
  display: none; /* Hidden by default */
  width: 100%; /* Full width (cover the whole page) */
  height: 100%; /* Full height (cover the whole page) */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5); /* Black background with opacity */
  z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
  cursor: pointer; /* Add a pointer on hover */
}


table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  margin: 0;
  padding: 0;
/*  width: 100%;*/
  table-layout: fixed;
}
table.dataTable{
	width: auto;
}

table caption {
  /*font-size: 1.5em;*/
  margin: .5em 0 .75em;
}

table tr {
  background-color: #f8f8f8;
  border: 1px solid #ddd;
  padding: 0;
}

table th,
table td {
  padding: .625em;
  text-align: center;
    border-right-width: 1px ;
}
table th input{
	border: var(--bs-border-width) solid var(--bs-border-color);
  	border-radius: var(--bs-border-radius);
	line-height: 2;
    max-width: 100%;	
}
table th {
 /* font-size: .55em;*/
  letter-spacing: .1em;
}


td.motivazione {
	font-size: 16px; 
	text-transform: lowercase;
	white-space: break-spaces;
	text-align: inherit;
	
}
#filters .form-select{
	font-size:inherit;
}

@media screen and (max-width: 1850px)  {
  table {
    border: 0;
  }

	td.motivazione {
		font-size: 0.8em;
		text-transform: lowercase;
		white-space: break-spaces;
		text-align: inherit;
		
		
	}
	
	td.motivazione span {
		padding:0 10px;
		float: right;
	}
	
	  table caption {
	    font-size: 1.3em;
	  }
	  
	  table thead {
	    border: none;
	    clip: rect(0 0 0 0);
	    height: 1px;
	    margin: -1px;
	    overflow: hidden;
	    padding: 0;
	  /*  position: absolute;*/
	    width: 1px;
	  }
	
	  table tr {
	    border-bottom: none;
	   /* display: block;*/
	    margin-bottom: 0;
	  }
	  
	  table td {
	    border-bottom: 1px solid #ddd;
	 /*   display: block;
	    font-size: .8em;
	    text-align: right;*/
	    
	  }
	/*  td:first-child, th:first-child {
	  position: sticky;
	  left: 0;
	  z-index: 2;
	  background: inherit;
	}
	*/
	  
	  table td::before {
	    /*
	    * aria-label has no advantage, it won't be read inside a table
	    content: attr(aria-label);
	    */
	    content: attr(data-label);
	    float: left;
	    font-weight: bold;
	    text-transform: uppercase;
	  }
	  
	  table td:last-child {
	    border-bottom: 0;
	  }
	  
}

@media only screen and (max-width: 576px) {
  /* For mobile phones: */
	 .btn-circle {
	    padding:2px 3px;
	  }
	  
	  body {
	   font-size: 1em;
	  }
	  body #nav-assistenti{
			font-size: 1em;
		}
	  
	  
	  td.motivazione span {
		float: none;
	}
}

.uppercase {
	text-transform:uppercase
}


.overlay-card {
	opacity: 0.5;
	background: #aaa;
	display: none;
	position: absolute;
	height: 100%;
	width: 100%;
	z-index: 10;
	top: 0px;
	left: 0px;
	
}



.spinner-border {
	position: absolute;
	top: 50%;
	left: 50%;
	display: none;
	z-index: 11;
}



#notfound {
  position: relative;
  height: 100vh;
}

#notfound .notfound {
  position: absolute;
  left: 50%;
  top: 30%;
  -webkit-transform: translate(-25%, -50%);
      -ms-transform: translate(-25%, -50%);
          transform: translate(-25%, -50%);
}

.notfound {
  max-width: 767px;
  width: 100%;
  line-height: 1.4;
  padding: 0px 15px;
}

.notfound .notfound-404 {
  position: relative;
  height: 150px;
  line-height: 150px;
  margin-bottom: 25px;
}

.notfound .notfound-404 h1 {
  font-family: 'Titillium Web', sans-serif;
  font-size: 186px;
  font-weight: 900;
  margin: 0px;
  text-transform: uppercase;
  background: url('../img/text.png');
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-size: cover;
  background-position: center;
}

.notfound h2 {
  font-family: 'Titillium Web', sans-serif;
  font-size: 26px;
  font-weight: 700;
  margin: 0;
}

.notfound p {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0px;
  text-transform: uppercase;
}

.notfound a {
  font-family: 'Titillium Web', sans-serif;
  display: inline-block;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  border: none;
  background: #5c91fe;
  padding: 10px 40px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 1px;
  margin-top: 15px;
  -webkit-transition: 0.2s all;
  transition: 0.2s all;
}

.notfound a:hover {
  opacity: 0.8;
}

@media only screen and (max-width: 767px) {
  .notfound .notfound-404 {
    height: 110px;
    line-height: 110px;
  }
  .notfound .notfound-404 h1 {
    font-size: 120px;
  }
}

.dt-buttons {
	text-align:left !important;
}

#sidenav {
	z-index:0;
}

#sidenav a {
	color:#0b5ed7;
}

#sidenav a:hover,#sidenav a.active {
	border-left:4px solid #0b5ed7;
}

/*
#nav-contact .row span,#nav-isee .row span {
	color:grey;
}
*/
#nav-contact .row label,#nav-isee .row label {
	color:black;
/*	font-weight: bold;*/
}

/* 
.email span:first-child {
	display:inline-block;
}
*/
.email b {
	
	word-wrap: break-word;

}


header.box_shadow {
	box-shadow: 0px 5px 10px 2px gray;
}

/* footer */
footer.footer_cedole {
	z-index:0
}

footer.footer_cedole > .phone_icon {
	color:white;
}

footer.footer_cedole > .version_info {
	font-size: 15px;
}

.card_body_info_privacy {
	overflow: auto;
	height:300px;
}


.form-control:read-only {
	opacity: 0.6;
	background-color: lightgrey;
}

/* Esclude il tipo file dal cambio di colore */
.form-control[type="file"]:read-only {
    background-color: transparent; /* Nessun colore di sfondo per il tipo file */
}

.easy-autocomplete {
	width:85%;
}
#tabella_richieste td[data-label=Azioni] a{
	margin-left: 20px;
  border: solid 1px rgb(105, 105, 105);
  padding: 5px;
}
.selection-message{
	font-size: .875em;
  }
  
  
  .error-message {
	  color: red;
  }
  
 .logofooter a {
	background: url('../img/logo_comune_napoli.png') no-repeat top left;
	width: 100px;
	height: 91px;
	display: block;
	overflow: hidden;
	line-height: 9999em;
}
.it-footer-main,.it-footer-small-prints {
	background: #001a33;
}

footer hr {
	border-top: 1px solid #fff;
padding: 0;
margin: 0;
	
}
footer a{
	color: #fff;
}
footer ul{
	padding: 0;
}
footer ul li{
	list-style-type:none;
}
.text-white-space-nowrap {
  white-space: nowrap;
}