:root {
  --INAF-TEXT-BASIC: #444444;
  --INAF-TEXT-LABEL: #858796;
  --INAF-TEXT-WHITE: #ffffff;
  --INAF-TEXT-DISABLED: #f5f5fce7;
  --INAF-GROUND-DISABLED: rgba(207, 207, 207, 0.3);
  --INAF-RED-BASIC: #cd0000;
  --INAF-DARK-ORANGE-BASIC: #c91f13;
  --INAF-ORANGE-BASIC: #c98913;
  --INAF-LIGHT-ORANGE-BASIC: #e6a225;
  --INAF-LIGHT-BLUE-BASIC: #70b5e3;
  --INAF-BLUE-BASIC: #3498db;
  --INAF-NAVY-BASIC: #0c456b;
  --INAF-GREEN-BASIC: #3db260;
  --INAF-GREENBLUE-BASIC: #3db297;
  --INAF-DARK-GREEN-BASIC: #37a157;
  --INAF-LIGHT-GREEN-BASIC: #4cca72;
  --INAF-YELLOW-BASIC: #ffefb0;
  --INAF-LIGHT-VIOLET-BASIC: #b699eb;
  --INAF-VIOLET-BASIC: #7368d8;
  --INAF-BLUE-000: #e6f7ff;
  --INAF-BLUE-100: #45a1df;
  --INAF-BLUE-200: #49a3df;
  --INAF-BLUE-300: #52a7e0;
  --INAF-BLUE-400: #5aace2;
  --INAF-BLUE-500: #63b0e3;
  --INAF-BLUE-600: #6cb4e5;
  --INAF-BLUE-700: #74b9e7;
  --INAF-BLUE-800: #81bfe9;
  --INAF-BLUE-900: #86c2ea;

  --INAF-MODULE-DEFAULT: #ffffff;
  --INAF-MODULE-001: #45a1df;
  --INAF-MODULE-001-BODY: #f8f9fd;
  --INAF-MODULE-002: #a785e7;
  --INAF-MODULE-002-BODY: #fcfafd;
  --INAF-MODULE-003: #dfb466;
  --INAF-MODULE-003-BODY: #ffefd1;
  --INAF-MODULE-004: #df6666;
  --INAF-MODULE-004-BODY: #fcf9f8;
  --INAF-MODULE-005: #6aa6ce;
  --INAF-MODULE-005-BODY: #f8f9fd;
  --INAF-MODULE-006: #aaaaaa;
  --INAF-MODULE-007: #aaaaaa;
  --INAF-MODULE-008: #aaaaaa;
  --INAF-MODULE-009: #aaaaaa;
  --INAF-MODULE-010: #aaaaaa;
  --INAF-MODULE-011: #aaaaaa;
  --INAF-MODULE-012: #aaaaaa;
  --INAF-MODULE-013: #aaaaaa;
  --INAF-MODULE-014: #aaaaaa;
  --INAF-MODULE-015: #aaaaaa;
  --INAF-MODULE-016: #aaaaaa;
  --INAF-MODULE-017: #aaaaaa;
  --INAF-MODULE-018: #aaaaaa;
  --INAF-MODULE-019: #aaaaaa;
  --INAF-MODULE-020: #aaaaaa;
}

/*BACK Color*/
.bg-opening {
  background-color: var(--INAF-BLUE-BASIC);
}
.bg-opening-0 {
  background-color: var(--INAF-BLUE-000);
}
.bg-opening-1 {
  background-color: var(--INAF-BLUE-100);
}
.bg-opening-2 {
  background-color: var(--INAF-BLUE-200);
}
.bg-opening-3 {
  background-color: var(--INAF-BLUE-300);
}
.bg-opening-4 {
  background-color: var(--INAF-BLUE-400);
}
.bg-opening-5 {
  background-color: var(--INAF-BLUE-500);
}
.bg-opening-6 {
  background-color: var(--INAF-BLUE-600);
}
.bg-opening-7 {
  background-color: var(--INAF-BLUE-700);
}
.bg-opening-8 {
  background-color: var(--INAF-BLUE-800);
}
.bg-opening-9 {
  background-color: var(--INAF-BLUE-900);
}
input:disabled,
select:disabled,
textarea:disabled {
   background-color: var(--INAF-GROUND-DISABLED) !important;
}
/*BACK light Color*/
.bg-module-default {
  background-color: var(--INAF-MODULE-DEFAULT);
}
.bg-module01 {
  background-color: var(--INAF-MODULE-001);
}
.bg-module01-body {
  background-color: var(--INAF-MODULE-001-BODY);
}
.bg-module02 {
  background-color: var(--INAF-MODULE-002);
}
.bg-module02-body {
  background-color: var(--INAF-MODULE-002-BODY);
}
.bg-module03 {
  background-color: var(--INAF-MODULE-003);
}
.bg-module03-body {
  background-color: var(--INAF-MODULE-003-BODY);
}
.bg-module04 {
  background-color: var(--INAF-MODULE-004);
}
.bg-module04-body {
  background-color: var(--INAF-MODULE-004-BODY);
}
.bg-module05 {
  background-color: var(--INAF-MODULE-005);
}
.bg-module06 {
  background-color: var(--INAF-MODULE-006);
}
.bg-module07 {
  background-color: var(--INAF-MODULE-007);
}
.bg-module08 {
  background-color: var(--INAF-MODULE-008);
}
.bg-module09 {
  background-color: var(--INAF-MODULE-009);
}
.bg-module10 {
  background-color: var(--INAF-MODULE-010);
}
.bg-module11 {
  background-color: var(--INAF-MODULE-011);
}
.bg-module12 {
  background-color: var(--INAF-MODULE-012);
}
.bg-module13 {
  background-color: var(--INAF-MODULE-013);
}
.bg-module14 {
  background-color: var(--INAF-MODULE-014);
}
.bg-module15 {
  background-color: var(--INAF-MODULE-015);
}
.bg-module16 {
  background-color: var(--INAF-MODULE-016);
}
.bg-module17 {
  background-color: var(--INAF-MODULE-017);
}
.bg-module18 {
  background-color: var(--INAF-MODULE-018);
}
.bg-module19 {
  background-color: var(--INAF-MODULE-019);
}
.bg-module20 {
  background-color: var(--INAF-MODULE-020);
}

/* TEXT color */
.basic-text{
  color: #06c;
  font-weight: 600;
}
.basic-header-text{
  color: rgb(255, 255, 255);
  font-size: 16px !important;
  font-weight: 600;
}

.basic-text-alert{
  color: var(--INAF-RED-BASIC)!important;
}

.basic-label {
  color: rgb(0, 0, 0) !important;
  font-weight: 600;
}
.basic-subtitle{
  color: var(--INAF-TEXT-LABEL) !important;
  font-weight: 600;
}

/* Background color */
.bg-dev {
  background: #ed7215 !important;
  color: #ffffff !important;
}
.bg-dev .span{
  color: #ffffff !important;
}

.bg-pattern{
  background-image: repeating-linear-gradient(-45deg, rgba(255,255,255, 0.25), rgba(255,255,255, 0.25) 1px, transparent 1px, transparent 6px);
  background-size: 4px 4px;
  background:#e19a16!important;
}

/* ======== LEVEL ======= */
.dimmer {
  z-index: 1001;
}
.notification-container {
 /* pointer-events: none;
  */
 /*position: absolute;
 /*bottom: 0;
 /* width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content!important;
  max-width: 100% !important;
  pointer-events: none;
  */
}
#notifications{
 /*flex-direction: column-reverse;
 */
}
.notification {
 /*position: relative!important;
 /*/
 /*bottom: 0px!important;
 */
 /*position: unset;
  right: 5px!important;
  margin-top: 10px!important;
 /* padding-top: ;
  right: 5px!important;
 /* pointer-events: auto;
 /*position: relative!important;
  */
}
.notification-index {
 /*display: flex !important;
 */
  z-index: 1000 !important;
}

.notification.center-fix {
  position: fixed;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  bottom: auto;
  right: auto;
}
/* ======= Login ======= */
.login-notification {
  color: var(--INAF-BLUE-BASIC);
  font-size: smaller;
  font-weight: bolder;
}
.progress-spinner-xs {
  display: block;
  width: 24px !important;
  height: 24px !important;
  border-radius: 50%;
  border: 4px solid #d8d9da;
}
.size-xs {
  width: 24px!important;
  height: 24px!important;
}
/* ======= Help ======= */
.help {
  position: relative;
  color: var(--INAF-BLUE-BASIC);
  font-size: 14px !important;
  bottom: 10px;
  cursor: pointer;
}
.help-icon{
  cursor: pointer;
  padding-bottom: 2px;
}
/* ======= Buttons ======= */
.btn-block {
  border-radius: 0;
}
.btn-block {
  display: block;
  width: 100% 
}
.btn-block+.btn-block {
  margin-top: .5rem;
}
.btn-square {
  display: block;
  min-height: 55px !important;
  max-height: 55px !important;
}
/* ======= Container and Wrapper ======= */
.wrapper-50 {
  width: 50% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-60 {
  width: 60% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-70 {
  width: 70% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-75 {
  width: 75% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-80 {
  width: 80% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-85 {
  width: 85% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-90 {
  width: 90% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-95 {
  width: 95% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-98 {
  width: 98% !important;
  margin-left: auto;
  margin-right: auto;
}
.wrapper-99 {
  width: 99% !important;
  margin-left: auto;
  margin-right: auto;
}

hr {
  border-top: 1px solid rgb(180, 180, 180) !important;
}
.mt-50{
  margin-top: 50px;
}
.mt-80{
  margin-top: 80px;
}
.mt-100{
  margin-top: 100px;
}
.mt-120{
  margin-top: 120px;
}
.mt-130{
  margin-top: 130px;
}
.mt-140{
  margin-top: 140px;
}
.mb-50{
  margin-bottom: 50px;
}
.mb-80{
  margin-bottom: 80px;
}
.mb-100{
  margin-bottom: 100px;
}
.mb-120{
  margin-bottom: 120px;
}
.mb-130{
  margin-bottom: 130px;
}
.mb-140{
  margin-bottom: 140px;
}
.mb-textarea{
  margin-bottom: 1rem !important;
}

.mb-textarea-0{
  margin-bottom: 0rem !important;
}
.mb-textarea-2{
  margin-bottom: 2rem !important;
}
/* ======= Breadcrumbs ======= */

.breadcrumbs {
  padding: 5px 0;
  background: #f8f8f8;
  color: var(--INAF-TEXT-LABEL);
  min-height: 40px;
  margin-top: 40px;
}

.breadcrumbs h2 {
  font-size: 26px;
  font-weight: 400;
  margin: 0;
}

.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
}
.breadcrumbs ol li {
  padding-left: 10px;
  padding-top: 3px;
}
.breadcrumbs ol li+li {
  padding-left: 10px;
  padding-top: 3px;
}
.breadcrumbs ol li a svg {
  margin-top: 4px;
}
.breadcrumbs ol li+li::before {
  display: inline-block;
  padding-right: 10px;
  color: #3c3c3c;
  content: "/";
}
.breadcrumbs li+a {
  padding-left: 25px;
  padding-right: 15px;
}
@media (max-width: 768px) {
  .breadcrumbs ol {
      display: block;
 }
  .breadcrumbs ol li {
      display: inline-block;
 }
  .breadcrumbs h2 {
      font-size: 16px;
 }
}
.breadtheme-red {
  background: var(--INAF-RED-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-orange {
  background: var(--INAF-ORANGE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-lightorange {
  background: var(--INAF-LIGHT-ORANGE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-darkorange {
  background: var(--INAF-DARK-ORANGE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}

.breadtheme-green {
  background: var( --INAF-GREEN-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-lightgreen {
  background: var( --INAF-LIGHT-GREEN-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-darkgreen {
  background: var( --INAF-DARK-GREEN-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-greenblue {
  background: var( --INAF-GREENBLUE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}

.breadtheme-blue {
  background: var( --INAF-BLUE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-lightblue {
  background: var( --INAF-LIGHT-BLUE-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}

.breadtheme-violet {
  background: var( --INAF-VIOLET-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}
.breadtheme-lightviolet {
  background: var( --INAF-LIGHT-VIOLET-BASIC)!important;
  color: var(--INAF-TEXT-WHITE)!important;
}

.breadtheme-red ol li a,
.breadtheme-red ol li+li::before,
.breadtheme-orange ol li a,
.breadtheme-orange ol li+li::before,
.breadtheme-lightorange ol li a, 
.breadtheme-lightorange ol li+li::before ,
.breadtheme-darkorange ol li a, 
.breadtheme-darkorange ol li+li::before ,
.breadtheme-green ol li a,
.breadtheme-green ol li+li::before,
.breadtheme-greenblue ol li a,
.breadtheme-greenblue ol li+li::before,
.breadtheme-lightblue ol li a, 
.breadtheme-lightblue ol li+li::before ,
.breadtheme-blue ol li a, 
.breadtheme-blue ol li+li::before,
.breadtheme-lightviolet ol li a, 
.breadtheme-lightviolet ol li+li::before,
.breadtheme-violet ol li a, 
.breadtheme-violet ol li+li::before{
  font-weight: 600;
  color: var(--INAF-TEXT-WHITE)!important;
}

/* ==== Picard ===*/
.picard {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid #e3e6f0;
}
.picard > hr {
  margin-right: 0;
  margin-left: 0;
}
.picard > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.picard > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.35rem - 1px);
  border-top-right-radius: calc(0.35rem - 1px);
}
.picard > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.35rem - 1px);
  border-bottom-left-radius: calc(0.35rem - 1px);
}
.picard > .picard-header + .list-group, .picard > .list-group + .picard-footer {
  border-top: 0;
}
.picard-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}
.picard-title {
  text-align: center;
}
.picard-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}
.picard-text:last-child {
  margin-bottom: 0;
}
.picard-link:hover {
  text-decoration: none;
}
.picard-link + .picard-link {
  margin-left: 1.25rem;
}
.picard-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  border-bottom: 1px solid #e3e6f0;
  font-weight: 600!important;
  font-size: 13px;
  color: var(--INAF-TEXT-LABEL);
}
.picard-header:first-child {
  border-radius: calc(0.35rem - 1px) calc(0.35rem - 1px) 0 0;
}
.picard-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f8f9fc;
  border-top: 1px solid #e3e6f0;
}
.picard-footer:last-child {
  border-radius: 0 0 calc(0.35rem - 1px) calc(0.35rem - 1px);
}
.picard-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}
.picard-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}
.picard-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.35rem - 1px);
}
.picard-img, .picard-img-top, .picard-img-bottom {
  flex-shrink: 0;
  width: 100%;
}
.picard-img, .picard-img-top {
  border-top-left-radius: calc(0.35rem - 1px);
  border-top-right-radius: calc(0.35rem - 1px);
}
.picard-img, .picard-img-bottom {
  border-bottom-right-radius: calc(0.35rem - 1px);
  border-bottom-left-radius: calc(0.35rem - 1px);
}
.picard-deck .picard {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .picard-deck {
      display: flex;
      flex-flow: row wrap;
      margin-right: -0.75rem;
      margin-left: -0.75rem;
 }
  .picard-deck .picard {
      flex: 1 0 0%;
      margin-right: 0.75rem;
      margin-bottom: 0;
      margin-left: 0.75rem;
 }
}
.picard-group > .picard {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .picard-group {
      display: flex;
      flex-flow: row wrap;
 }
  .picard-group > .picard {
      flex: 1 0 0%;
      margin-bottom: 0;
 }
  .picard-group > .picard + .picard {
      margin-left: 0;
      border-left: 0;
 }
  .picard-group > .picard:not(:last-child) {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
 }
  .picard-group > .picard:not(:last-child) .picard-img-top, .picard-group > .picard:not(:last-child) .picard-header {
      border-top-right-radius: 0;
 }
  .picard-group > .picard:not(:last-child) .picard-img-bottom, .picard-group > .picard:not(:last-child) .picard-footer {
      border-bottom-right-radius: 0;
 }
  .picard-group > .picard:not(:first-child) {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
 }
  .picard-group > .picard:not(:first-child) .picard-img-top, .picard-group > .picard:not(:first-child) .picard-header {
      border-top-left-radius: 0;
 }
  .picard-group > .picard:not(:first-child) .picard-img-bottom, .picard-group > .picard:not(:first-child) .picard-footer {
      border-bottom-left-radius: 0;
 }
}
.picard-columns .picard {
  margin-bottom: 0.75rem;
}

.picard-w-128 {
  width: 130px !important;
}

.picard-edit {
  background-color: var(--INAF-RED-BASIC)!important;
}

/* ===== TASK Image elements ===== */
.task {
  text-align: center;
}
.task h3 {
  margin-top: 7px;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 11px;
  padding: 0;
}
.task img {
  width: 80px;
  height: auto;
}
.presentation #presentation-filters {
  padding: 0;
  margin: 0 auto 25px auto;
  list-style: none;
  text-align: center;
  border-radius: 50px;
}
.presentation #presentation-filters li {
  cursor: pointer;
  display: inline-block;
  padding: 10px 15px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 5px;
  transition: all 0.3s ease-in-out;
  text-transform: uppercase;
  color: var(--INAF-TEXT-LABEL);
}
.presentation #presentation-filters li:hover, .presentation #presentation-filters li.filter-active {
  color: #e82d2d;
}
.card-shadow{
  box-shadow: 0 .2rem .4rem 0.2rem rgba(0,0,0,.15)!important;
}
.card-shadow-red{
  box-shadow: 0 .2rem .4rem 0.2rem rgba(255, 0, 0, 0.199)!important;
}
.card-shadow-violet{
  box-shadow: 0 .2rem .4rem 0.2rem rgba(204, 1, 255, 0.144)!important;
}
.card-shadow-blue{
  box-shadow: 0 .2rem .4rem 0.2rem rgba(0, 68, 255, 0.15)!important;
}
.card-shadow-orange{
  box-shadow: 0 .2rem .4rem 0.2rem rgba(255, 136, 0, 0.212)!important;
}


.presentation > .picard {
  overflow: hidden;
}
.presentation > .picard:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.presentation > .picard:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.presentation > .picard > .picard-header {
  border-radius: 0;
  margin-bottom: -1px;
}
@media (min-width: 576px) {
  .picard-columns {
      -moz-column-count: 3;
      column-count: 3;
      -moz-column-gap: 1.25rem;
      column-gap: 1.25rem;
      orphans: 1;
      widows: 1;
 }
  .picard-columns .picard {
      display: inline-block;
      width: 100%;
 }
}
.card-title{
  font-size: 1.4rem;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
  color: #17324d;
}
.card-subtitle{
  font-size: 1.0rem;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  color: #444a50;
}

.card:after{content:"";display:block;margin-top:0px !important;margin-left:24px}

.border-card-color{
  border: 1px solid red;
}

.card-body-danger{
  border: 2px solid red;
}

.bordered{
  border: 1px solid #c9c9c9 !important;
}

.border-art-color{
  border: 2px solid var( --INAF-VIOLET-BASIC)!important;
}

.nobordertop{
  border-top: none !important;
}
.noborderbottom{
  border-bottom: none !important;
}
/* ======= Icon ======= */
.help-icon{
  cursor: pointer;
  padding-bottom: 2px;
}

.icon.icon-purple {
  fill: #800080; /* Sostituisci questo esadecimale con la sfumatura di viola che preferisci */
}
.icon.icon-warning-low {
  fill: #dbcd00; /* Sostituisci questo esadecimale con la sfumatura di viola che preferisci */
}
/* ======= Footer ======= */
#footer {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: #fff;
  font-size: 14px;
  padding: 0.50em;
  box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.1);
  z-index: 10;
}
#footer .credits {
  font-size: 13px;
  padding-top: 5px;
  color: #222222;
}
#footer .footer-links a {
  color: #222222;
  padding-left: 15px;
}
#footer .footer-links a:first-child {
  padding-left: 0;
}
#footer .footer-links a:hover {
  color: #3498db;
}

/* ===== TABLE ======*/
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;

  position: relative;
  clear: both;
}

.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}
ol, ul, dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

.current{
  color: #fff !important;
  background-color: #4285f4!important;
}
.pagination .page-item.active .page-link {
  color: #fff;
  background-color: #4285f4;
  border-radius: 0.125rem;
  -webkit-box-shadow: 0 2px 5px 0 rgb(0 0 0 / 16%), 0 2px 10px 0 rgb(0 0 0 / 12%);
  box-shadow: 0 2px 5px 0 rgb(0 0 0 / 16%), 0 2px 10px 0 rgb(0 0 0 / 12%);
  -webkit-transition: all .2s linear;
  transition: all .2s linear;
  height: 2rem;
  min-width: 2rem;
  display: block !important;
}

.pagination .page-item .page-link {
  font-size: .9rem;
  color: #212529;
  background-color: transparent;
  border: 0;
  outline: 0;
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

table.dataTable tbody tr.selected {
  color: white;
  background-color: #3498db;
}

table.dataTable tbody tr.selected,
table.dataTable tbody tr.selected > td,
table.dataTable tbody tr.selected.odd > td,
table.dataTable tbody tr.selected.even > td {
    background-color: #2b82c9 !important; /* Colore blu uniforme */
    color: #ffffff !important;            /* Testo bianco per buon contrasto */
}

div.dataTables_wrapper div.dataTables_filter label, div.dataTables_wrapper div.dataTables_length label {
  text-align: left;
  font-weight: 400;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
  display: flex !important;
  align-items: center;
}

.dataTables_wrapper .dataTables_length select {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.dataTables_wrapper .dataTables_filter input {
  margin-left: 0.5rem !important;
}

.paginate_button:hover {
  color: white !important;
  border-color:#ffffff !important;
  background-color: #ffffff !important;
  background: #ffffff !important;
}

.table td {
  text-align: left;
  border-bottom: 1px solid #d6dce3;
  border-top: none;
}

.table th {
  text-align: center;
  border-bottom: 1px solid #d6dce3;
  border-top: none;
}

.no-wrap {
  white-space: nowrap;       
  overflow: hidden;           
  text-overflow: ellipsis;    
  max-width: 150px;          
}

.colActionWidth{
  width: 60px !important;
}

.action-button {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.0) !important;
}

/* ======= Modal ======= */
.modal-xl {
  max-width: 800px;
}

.modal-xl-prec-50 {
  max-width: 50%;
}

.modal-xl-prec-70 {
  max-width: 70%;
}

.modal-subtitle{
  font-size: .8333333333rem;
  font-weight: 600;
  letter-spacing: .5px;
  text-transform: uppercase;
  color: #17324d;
}

.mw-max {
  max-width: 100% !important;
}

/* ======== Select Wrapper ======== */
.bootstrap-select-wrapper .dropdown.bootstrap-select .bs-actionsbox .btn-block {
  display: block;
  padding: 8px 24px;
}

.bootstrap-select-wrapper .dropdown.bootstrap-select .bs-actionsbox .btn-block .btn {
  padding: 0;
  display: inline-block;
  font-size: .8888888889rem;
  color: #06c;
  font-weight: 400;
  width: auto;
  margin-right: 24px;
}

.bootstrap-select-wrapper .dropdown.bootstrap-select .bs-actionsbox .btn-block .btn:active, .bootstrap-select-wrapper .dropdown.bootstrap-select .bs-actionsbox .btn-block .btn:focus {
  box-shadow: none;
}

.bootstrap-select-wrapper .dropdown.bootstrap-select .bs-actionsbox .btn-block .btn:hover {
  text-decoration: underline;
}

/* AUTOCOMPLETE */
.ui-widget{
	font-family:"Titillium Web",Lora,sans-serif !important;
}
.ui-widget button{
	font-family:"Titillium Web",Lora,sans-serif !important;
}

.ui-autocomplete{
  position:absolute;
  z-index: 9999;
  top:0;
  left:0;
  cursor:default;
  max-height:196px;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:20px;
  background-color: inherit;
  border: 1px solid #e3e6f0;
}

.autocomplete-icon {
    background-color: transparent !important;
}

.modal-autocomplete{
  z-index: 99999;
}

/* ======= Callout ====== */
.callout-inaf {
  max-width: 100% !important;
  margin: 0.50rem 0 0.5rem;
}

/* ======= None ======= */
.noselect {
  -webkit-touch-callout: none;
 /* iOS Safari */
  -webkit-user-select: none;
 /* Safari */
  -khtml-user-select: none;
 /* Konqueror HTML */
  -moz-user-select: none;
 /* Old versions of Firefox */
  -ms-user-select: none;
 /* Internet Explorer/Edge */
  user-select: none;
 /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}
.pt-n10{
  padding-top: -10px !important;
}
.pt-n20{
  padding-top: -20px !important;
}
.pt-n30{
  padding-top: -30px !important;
}
.pt-n40{
  padding-top: -40px !important;
}
.pt-n50{
  padding-top: -50px !important;
}
.pt-n60{
  padding-top: -60px !important;
}
.mb-n10{
  margin-bottom: -10px !important;
}
.mb-n20{
  margin-bottom: -20px !important;
}
.mb-n30{
  margin-bottom: -30px !important;
}
.mb-3rem{
  margin-bottom: 3rem !important;
}
.notopad {
  padding-top: 0 !important;
}
.nopadding {
  padding: 0 !important;
}
.nomargin {
  margin: 0 !important;
}
.nobackcolor{
  background-color: transparent !important;
}
.noradius {
  border-radius: 0rem !important;
}
.noshadow{
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.0) !important;
}
.noclick{
  pointer-events: none !important;
}

.displayNone,
.displayNoneLinks,
.displayNoneFilters{
  display: none;
}

a:hover, a:visited, a:link, a:active {
  text-decoration: none;
}

.ui-helper-hidden-accessible {
  display:none;
}

.pointer {
  cursor: pointer;
}

.arrow {
  cursor: pointer;
}
/* CUSTOM AREA */
/* bootstrap-tagsinput.css file - ADD in local */

.bootstrap-tagsinput {
  border: none;
    border-bottom: 1px solid #5d7083;
    border-radius: 0;
    outline: 0;
    height: 53px;
    width: 100%;
    box-shadow: none;
    transition: none;
    font-weight: 700;
    -webkit-border-radius: 0;
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto;
}
.bootstrap-tagsinput input {
  border: none;
  box-shadow: none;
  outline: none;
  background-color: transparent;
  padding: 0 6px;
  width: auto;
  max-width: inherit;
  vertical-align: middle;
}
.bootstrap-tagsinput.form-control input::-moz-placeholder {
  color: #777 !important;
  opacity: 1;
}
.bootstrap-tagsinput.form-control input:-ms-input-placeholder {
  color: #777 !important;
}
.bootstrap-tagsinput.form-control input::-webkit-input-placeholder {
  color: #777 !important;
}
.bootstrap-tagsinput input:focus {
  border: none;
  box-shadow: none;
}
.bootstrap-tagsinput .tag {
  margin-right: 2px;
  color: white;
}
.bootstrap-tagsinput .tag [data-role="remove"] {
  margin-left: 8px;
  cursor: pointer;
}
.bootstrap-tagsinput .tag [data-role="remove"]:after {
  content: "x";
  padding: 0px 2px;
}
.bootstrap-tagsinput .tag [data-role="remove"]:hover {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.bootstrap-tagsinput .tag [data-role="remove"]:hover:active {
  box-shadow: inset 0 2px 3px rgba(0, 0, 0, 0.125);
}

.tagCol{
  border-bottom: 1px solid #5d7083;
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  height: 53px;
  vertical-align: middle;
  padding-top: 8px;
}

.label-info{
  background-color: transparent !important;
  color: var(--INAF-BLUE-BASIC) !important;
  vertical-align: middle;
  border: 1px solid var(--INAF-BLUE-BASIC) !important;
  border-radius: 0.15em;
  padding: 3px 5px 4px !important;
}

.label-info:hover {
  cursor: hand;
  cursor: pointer;
  opacity: .9;
}

.label-tags{
  color: #1a1a1a;
  font-size: .7777777778rem;
  font-weight: 600;
  padding: 0 1rem 0.5rem;
}

.label-signature{
  color: #1a1a1a;
  font-size: 12px !important;
  font-weight: 400;
  padding-bottom: 1rem;
}

.tox-promotion{
  visibility: hidden;
}

.tox-statusbar__branding{
  visibility: hidden;
}

.tox-tinymce {
  border: 1px solid rgba(0, 0, 0, 0.7) !important;
  border-radius: 0 !important;
}

.tox-editor-header{
  box-shadow: none;
}

.paper-clip{
  padding: 0;
  display: inline-block;
  font-size: .9rem ;
  color: #06c;
  font-weight: 200;
}

.chip-label-fixed {
  font-size: 16px !important;
}

.nominative-label-fixed {
  font-size: 16px !important;
}

.text-condensed{
  font-size: 1em  !important;
}

.table-condensed{
  font-size: .75em  !important;
}

@media (min-width: 576px) {
  html, body {
      font-size: 14px !important;
      line-height: 1.555 !important;
  }
}
@media (min-width: 768px) {
  html, body {
      font-size: 14px !important;
      line-height: 1.555 !important;
  }
}
@media (min-width: 992px) {
  html, body {
      font-size: 14px !important;
      line-height: 1.555 !important;
  }
}
@media (min-width: 1200px) {
  html, body {
      font-size: 14px !important;
      line-height: 1.555 !important;
  }
}

.card:after {
  content: "";
  display: block;
  margin-top: 0px !important;
  margin-left: 24px;
}

.btn-xs {
  padding: 6px 12px !important;
  font-size: 14px !important;
}

.font-xs{
  font-size: .7777777778rem !important;
  font-weight: 600 !important;
}

.alert-danger,
.alert-warning {
  background-position: 20px 8px !important;
}

.select-readonly {
  pointer-events: none;       /* disabilita clic */
  cursor: not-allowed;        /* cursore divieto */
  background-color: white;    /* mantieni stile normale */
  color: black;               /* evita grigio */
}

.validation {
  font-size: 1rem !important;
  font-weight: 600 !important;
}

.hidden {
  display: none;
}

.toggle-label-start {
  display: flex;
  align-items: left;
  gap: 6px; /* distanza fra testo e bottone */
}

.toggle-label-end {
  display: flex;
  justify-content: flex-end; 
  width: 100%; 
  gap: 6px; /* distanza fra testo e bottone */
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  background-image: none !important;
}

.centered-spinner-container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999; /* Per stare sopra a tutto */
}

.custom-cell-scroll {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important; /* Elimina i micro-overflow di calcolo */
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    display: block !important;
}

/* Rende il canale dello scroll completamente invisibile quando non serve */
.custom-cell-scroll::-webkit-scrollbar {
    height: 4px !important;
    background: transparent !important;
}

.custom-cell-scroll::-webkit-scrollbar-track {
    background: transparent !important;
    border: none !important;
}

.custom-cell-scroll::-webkit-scrollbar-thumb {
    background-color: #ccc !important;
    border-radius: 4px !important;
}

/* Blocca l'andata a capo per tutti gli header della tabella */
table.dataTable th {
    white-space: nowrap;
}

/* Oppure assegna una larghezza minima specifica via CSS */
table.dataTable th:nth-child(4),
table.dataTable th:nth-child(6) {
    min-width: 180px;
    white-space: nowrap;
}