/* Regole per navbar principale
ciao*/
.blink_me {
  animation: blinker 1s linear infinite;
}
@keyframes blinker {
  50% { opacity: 0; }
}
.navbar-inverse .nav li a {
  font-size:16px;
}
.navbar-inverse .navbar-text {
  color: #CCC
}
.navbar-inverse .navbar-nav>li>a {
  color: #CCC;
}
.navbar-inverse .navbar-brand {
  font-size:16px; color: orange
}

/* Elimina margine in basso (usato in Dashboard:Geo, Gismobile: Copertura e Disservizi) */
.noMarginBottom{
  margin-bottom: 0px;
}

/* Regole per icona attesa */
#loading, #loadingCRM{
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  z-index: 1110;
}

#loadingText{
  font-weight: bold;
  color: blue;
  margin-top: 20px;
}

.hasLoadingCustom {
  position: relative;
  padding: .5em .5em;
}

.loadingCustom {
  /*d-none w-100 h-102 justify-content-center p-3" style="position: absolute; top: -1em; left: 0; background: rgba(0,0,0,0.1);"> */
  background: rgba(0,0,0,0.1);
  filter:alpha(opacity=50); /* IE */
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#darkLayer{
  background-color: black;
  filter:alpha(opacity=50); /* IE */
  opacity: 0.5;
  z-index: 1100;
  height: 100%;
  width: 100%;
  background-repeat:no-repeat;
  background-position:center;
  position: fixed;
  top: 0px;
  left: 0px;
}

.darkLayerR{
  background-color: black;
  filter:alpha(opacity=50); /* IE */
  opacity: 0.5;
  z-index: 1100;
  height: 100%;
  width: 100%;
  background-repeat:no-repeat;
  background-position:center;
  position: absolute;
  top: 0;
  left: 0;
}
.loadingTextR{
  font-weight: bold;
  color: blue;
  margin-top: 20px;
}
/* Regole per dropdown multicolonna (Dashboard\Geo, Gismobile\Disservizi) */
.multi-column-dropdown {
  list-style: none;
}

.multi-column-dropdown li {
  width: 100%;
}

.multi-column-dropdown li a {
  font-size: 13px !important;
  display: block;
  clear: both;
  line-height: 1.428571429;
  color: #333;
  white-space: normal;
}

.multi-column-dropdown li a:hover {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}

.multi-column-dropdown li a:focus {
  text-decoration: none;
}

/* Regola per immagine responsive nel carousel bootstrap */
.carousel-inner > .item > img {
  display: block;
  width: 100%;
  height: auto;
}

/* Regola per rendere i modal bootstrap marcati con la classe achi-resizable ridimensionabili*/
.modal.achi-resizable .modal-content{
  resize: both;
  overflow: auto;
}

/* Media query per gestione schermi di grandi dimensioni */
@media (min-width: 1600px) {
  .container {
      width: 1570px;
  }
}
img-circle {
  border-radius: 50%; /* set radius in percents*/
  width: 100%;
}

.menu_active{
   background-color: orange;
   color:white !important;
   font-weight:bold;
}

.submenu1-list-group{
    padding-left: 44px !important
}


.logo_windtre{
    width:80px;
    height:30px;
    position:relative;
    top: -6px;
    cursor:default;
}

.top_user {
    top:-5px !important;
    position: relative;
    display: inline-block;
}

.testo_tab {
    font-family: Arial;
}

.testo_small {
  font-size: 80%;
}

.ui-autocomplete { height: 100px; overflow-y: scroll; overflow-x: hidden;}

.hasLoadingCustom {
    position: relative;
    padding: .5em .5em;
}

.loadingCustom {
    /*d-none w-100 h-102 justify-content-center p-3" style="position: absolute; top: -1em; left: 0; background: rgba(0,0,0,0.1);"> */
  background: rgba(0,0,0,0.1);
  filter:alpha(opacity=50); /* IE */
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.modalEstesa {
  width: 90%;
  max-width: none;
}
.hide {
  display: none;
}
.modal-open {
  position: fixed;
  width: 100%;
}
.btn-select {
  color: #495057;
  background-color: #fff;
  border-color: #ced4da;
  border-radius: .25rem;
}

.gap-0 {
  gap: 0 !important;;
}
.gap-1 {
  gap: 0.25rem !important;;
}
.gap-2 {
  gap: 0.5rem !important;;
}
.gap-3 {
  gap: 1rem !important;;
}
.gap-4 {
  gap: 1.5rem !important;;
}
.gap-5 {
  gap: 3rem !important;;
}

.top-0 {
  top: 0 !important;
}
.top-50 {
  top: 50% !important;
}
.top-100 {
  top: 100% !important;
}
.start-0 {
  left: 0 !important;
}
.start-50 {
  left: 50% !important;
}
.start-100 {
  left: 100% !important;
}
.end-0 {
  right: 0 !important;
}
.end-50 {
  right: 50% !important;
}
.end-100 {
  right: 100% !important;
}
.bottom-0 {
  bottom: 0 !important;
}
.bottom-50 {
  bottom: 50% !important;
}
.bottom-100 {
  bottom: 100% !important;
}
.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.counters-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 1rem;
}

.bg-primary-25 {
  background-color: rgba(0, 123, 255, 0.25) !important;
}
.bg-secondary-25 {
  background-color: rgba(108, 117, 125, 0.25) !important;
}
.bg-success-25 {
  background-color: rgba(40, 167, 69, 0.25) !important;
}
.bg-danger-25 {
  background-color: rgba(220, 53, 69, 0.25) !important;
}
.bg-warning-25 {
  background-color: rgba(255, 193, 7, 0.25) !important;
}
.bg-info-25 {
  background-color: rgba(23, 162, 184, 0.25) !important;
}
.bg-purple-25 {
  background-color: rgba(111, 66, 193, 0.25) !important;
}
.bg-primary-50 {
  background-color: rgba(0, 123, 255, 0.5) !important;
}
.bg-secondary-50 {
  background-color: rgba(108, 117, 125, 0.5) !important;
}
.bg-success-50 {
  background-color: rgba(40, 167, 69, 0.5) !important;
}
.bg-danger-50 {
  background-color: rgba(220, 53, 69, 0.5) !important;
}
.bg-warning-50 {
  background-color: rgba(255, 193, 7, 0.5) !important;
}
.bg-info-50 {
  background-color: rgba(23, 162, 184, 0.5) !important;
}
.bg-purple-50 {
  background-color: rgba(111, 66, 193, 0.5) !important;
}


.bounce { 
  animation: bounce 0.5s; 
  animation-direction: alternate; 
  animation-timing-function: cubic-bezier(.5, 1, 0.05, .5); 
  animation-iteration-count: infinite; 
} 

@keyframes bounce { 
  from { 
      transform: translate3d(0, 0, 0); 
  } 
  to { 
      transform: translate3d(0, -20%, 0); 
  } 
} 

.bounce2 {
  animation: bounce 2s ease infinite;
}
@keyframes bounce2 {
    70% { transform:translateY(0%); }
    80% { transform:translateY(-60%); }
    90% { transform:translateY(0%); }
    95% { transform:translateY(-45%); }
    97% { transform:translateY(0%); }
    99% { transform:translateY(-25%); }
    100% { transform:translateY(0); }
}

.bounce3 {
  animation: bounce3 2s ease-in infinite;
}
@keyframes bounce2 {
	0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
	40% {transform: translateY(-30px);}
	60% {transform: translateY(-15px);}
}

@keyframes drop {
  0% {
    transform: translateY(-200px) scaleY(0.9);
    opacity: 0;
  }
  5% {
    opacity: 0.7;
  }
  50% {
    transform: translateY(0px) scaleY(1);
    opacity: 1;
  }
  65% {
    transform: translateY(-17px) scaleY(0.9);
    opacity: 1;
  }
  75% {
    transform: translateY(-22px) scaleY(0.9);
    opacity: 1;
  }
  100% {
    transform: translateY(0px) scaleY(1);
    opacity: 1;
  }
}
.drop {
  animation: drop 0.3s linear forwards var(--delay-time);
}