﻿@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
:root {
  --h-header: 70px;
  --w-leftMenu: 22rem;
  --w-utenteMenu: 22rem;
  --minh-ulButton: 8.5rem;
  --bs-primary: #003f88;
  --bs-primary-rgb: 0, 63, 136;
  --bs-secondary: #4374ad;
  --bs-secondary-rgb: 67, 116, 173;
  --bs-success: #00a676;
  --bs-success-rgb: 0, 166, 118;
  --bs-info: #49aee9;
  --bs-info-rgb: 73, 174, 233;
  --bs-warning: #fdca40;
  --bs-warning-rgb: 253, 202, 64;
  --bs-danger: #bc2c1a;
  --bs-danger-rgb: 188, 44, 26;
  --bs-light: #ccc;
  --bs-light-rgb: #ccc;
  --bs-dark: #999;
  --bs-dark-rgb: #999;
}

@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes logo-in {
  0% {
    opacity: 0;
    margin-top: -100px;
  }
  80% {
    opacity: 1;
    margin-top: 10px;
  }
  100% {
    margin-top: 0;
  }
}
@keyframes nav-in {
  0% {
    opacity: 0;
    margin-right: -310px;
  }
  80% {
    opacity: 1;
    margin-right: 10px;
  }
  100% {
    margin-right: 0;
  }
}
.fade-in {
  opacity: 0;
  -webkit-transition: opacity 800ms ease-out;
  -moz-transition: opacity 800ms ease-out;
  -ms-transition: opacity 800ms ease-out;
  -o-transition: opacity 800ms ease-out;
  transition: opacity 800ms ease-out;
}

.slide-from-left {
  opacity: 0;
  -moz-transform: translateX(-50px);
  -webkit-transform: translateX(-50px);
  -o-transform: translateX(-50px);
  -ms-transform: translateX(-50px);
  transform: translateX(-50px);
  -webkit-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -moz-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -ms-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -o-transition: transform 800ms ease-out, opacity 800ms ease-out;
  transition: transform 800ms ease-out, opacity 800ms ease-out;
}

.slide-from-right {
  opacity: 0;
  -moz-transform: translateX(50px);
  -webkit-transform: translateX(50px);
  -o-transform: translateX(50px);
  -ms-transform: translateX(50px);
  transform: translateX(50px);
  -webkit-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -moz-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -ms-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -o-transition: transform 800ms ease-out, opacity 800ms ease-out;
  transition: transform 800ms ease-out, opacity 800ms ease-out;
}

.slide-from-top {
  opacity: 0;
  -moz-transform: translateY(-50px);
  -webkit-transform: translateY(-50px);
  -o-transform: translateY(-50px);
  -ms-transform: translateY(-50px);
  transform: translateY(-50px);
  -webkit-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -moz-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -ms-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -o-transition: transform 800ms ease-out, opacity 800ms ease-out;
  transition: transform 800ms ease-out, opacity 800ms ease-out;
}

.slide-from-bottom {
  opacity: 0;
  -moz-transform: translateY(50px);
  -webkit-transform: translateY(50px);
  -o-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -moz-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -ms-transition: transform 800ms ease-out, opacity 800ms ease-out;
  -o-transition: transform 800ms ease-out, opacity 800ms ease-out;
  transition: transform 800ms ease-out, opacity 800ms ease-out;
}

.delay-500 {
  transition-delay: 500ms !important;
}

.delay-1000 {
  transition-delay: 1000ms !important;
}

.delay-1500 {
  transition-delay: 1500ms !important;
}

.delay-2000 {
  transition-delay: 2000ms !important;
}

.delay-2500 {
  transition-delay: 2500ms !important;
}

.active .fade-in {
  opacity: 1;
}
.active .slide-from-left,
.active .slide-from-right {
  opacity: 1;
  -moz-transform: translateX(0);
  -webkit-transform: translateX(0);
  -o-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}
.active .slide-from-top,
.active .slide-from-bottom {
  opacity: 1;
  -moz-transform: translateY(0);
  -webkit-transform: translateY(0);
  -o-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

html {
  height: 100%;
  font-size: 15px;
}

body {
  min-height: 100%;
  padding-top: var(--h-header);
  background-color: #f0f0f0;
  font-family: "Inter", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  color: #222;
}

a {
  color: inherit;
  -webkit-transition: all 250ms ease;
  -moz-transition: all 250ms ease;
  -ms-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  line-height: 1.1;
}

.small {
  font-size: 0.8rem;
}

.colorPrincipale {
  color: #003f88 !important;
}

.colorSecondario {
  color: #4374ad !important;
}

.colorGrigio {
  color: #999 !important;
}

.colorWarning {
  color: #fdca40 !important;
}

.colorDanger {
  color: #bc2c1a !important;
}

.ulDef {
  margin-bottom: 0;
  padding-left: 10px;
}

.ulNone {
  margin: 0;
  padding: 0;
  list-style: none;
}

.animIco > i:before {
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.animIco.animIcoRight:hover > i:before {
  -moz-transform: translateX(0.25rem);
  -webkit-transform: translateX(0.25rem);
  -o-transform: translateX(0.25rem);
  -ms-transform: translateX(0.25rem);
  transform: translateX(0.25rem);
}
.animIco.animIcoLeft:hover > i:before {
  -moz-transform: translateX(-0.25rem);
  -webkit-transform: translateX(-0.25rem);
  -o-transform: translateX(-0.25rem);
  -ms-transform: translateX(-0.25rem);
  transform: translateX(-0.25rem);
}
.animIco.animIcoZoom:hover > i:before {
  -moz-transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}
.animIco.animIcoRotate:hover > i:before {
  -moz-transform: rotate(360deg);
  -webkit-transform: rotate(360deg);
  -o-transform: rotate(360deg);
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}

.videoBg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}
.videoBg video {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.videoBg iframe {
  width: 100vw;
  height: 56.25vw;
  min-width: 177.77vh;
  min-height: 100vh;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#loadingScreen {
  position: fixed;
  top: var(--h-header);
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 997;
  background-color: #f0f0f0;
}
#loadingScreen #loadingCont {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

/* ######################
##### MEDIA-QUERIES #####
###################### */
@media (max-width: 767.98px) {
  html {
    font-size: 15px;
  }
}
@media (max-width: 575.98px) {
  html {
    font-size: 14px;
  }
}
.btn {
  --bs-btn-padding-x: 1.5rem;
  --bs-btn-padding-y: 0.75rem;
}

.btn-group-sm > .btn,
.btn-sm {
  --bs-btn-padding-x: 1.25rem;
  --bs-btn-padding-y: 0.45rem;
}

.form-control {
  border-color: rgb(227.25, 227.25, 227.25);
}

.input-group input[type=file] + .btn,
.input-group input[type=file] + input + .btn,
.input-group input[type=file] + input + input + .btn,
.input-group input[type=file] + select + .btn,
.input-group input[type=file] + input + select + .btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
}

.input-group-sm > .btn,
.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text {
  padding: 0.45rem 0.8rem;
}

.btn-primary {
  --bs-btn-bg: #003f88;
  --bs-btn-border-color: #003f88;
  --bs-btn-hover-bg: rgb(0, 44.1, 95.2);
  --bs-btn-hover-border-color: rgb(0, 44.1, 95.2);
  --bs-btn-active-bg: rgb(0, 44.1, 95.2);
  --bs-btn-active-border-color: rgb(0, 44.1, 95.2);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.btn-secondary {
  --bs-btn-bg: #4374ad;
  --bs-btn-border-color: #4374ad;
  --bs-btn-hover-bg: rgb(55.61, 96.28, 143.59);
  --bs-btn-hover-border-color: rgb(55.61, 96.28, 143.59);
  --bs-btn-active-bg: rgb(55.61, 96.28, 143.59);
  --bs-btn-active-border-color: rgb(55.61, 96.28, 143.59);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.btn-success {
  --bs-btn-bg: #00a676;
  --bs-btn-border-color: #00a676;
  --bs-btn-hover-bg: rgb(0, 125.2, 88.9975903614);
  --bs-btn-hover-border-color: rgb(0, 125.2, 88.9975903614);
  --bs-btn-active-bg: rgb(0, 125.2, 88.9975903614);
  --bs-btn-active-border-color: rgb(0, 125.2, 88.9975903614);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.btn-info {
  --bs-btn-bg: #49aee9;
  --bs-btn-border-color: #49aee9;
  --bs-btn-hover-bg: rgb(36.6, 157.8, 228.6);
  --bs-btn-hover-border-color: rgb(36.6, 157.8, 228.6);
  --bs-btn-active-bg: rgb(36.6, 157.8, 228.6);
  --bs-btn-active-border-color: rgb(36.6, 157.8, 228.6);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.btn-warning {
  --bs-btn-bg: #fdca40;
  --bs-btn-border-color: #fdca40;
  --bs-btn-hover-bg: rgb(252.5772020725, 190.7958549223, 23.6227979275);
  --bs-btn-hover-border-color: rgb(252.5772020725, 190.7958549223, 23.6227979275);
  --bs-btn-active-bg: rgb(252.5772020725, 190.7958549223, 23.6227979275);
  --bs-btn-active-border-color: rgb(252.5772020725, 190.7958549223, 23.6227979275);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.btn-danger {
  --bs-btn-bg: #bc2c1a;
  --bs-btn-border-color: #bc2c1a;
  --bs-btn-hover-bg: rgb(152.1570093458, 35.6112149533, 21.0429906542);
  --bs-btn-hover-border-color: rgb(152.1570093458, 35.6112149533, 21.0429906542);
  --bs-btn-active-bg: rgb(152.1570093458, 35.6112149533, 21.0429906542);
  --bs-btn-active-border-color: rgb(152.1570093458, 35.6112149533, 21.0429906542);
  --bs-btn-disabled-bg: #ccc;
  --bs-btn-disabled-border-color: #ccc;
}

.nav {
  --bs-nav-link-color: #003f88;
  --bs-nav-link-hover-color: rgb(0, 44.1, 95.2);
  --bs-nav-link-disabled-color: #999;
}

.nav-pills {
  --bs-nav-pills-link-active-bg: #003f88;
}

hr {
  border-top: 1px solid rgb(227.25, 227.25, 227.25);
  opacity: 1;
}

.card {
  --bs-card-spacer-y: 1.5rem;
  --bs-card-spacer-x: 1.5rem;
  --bs-card-border-width: 0;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}

.custom-tooltip {
  --bs-tooltip-max-width: 750px;
  --bs-tooltip-padding-x: 2rem;
  --bs-tooltip-padding-y: 2rem;
  --bs-tooltip-bg: #003f88;
  --bs-tooltip-color: #fff;
  --bs-tooltip-opacity: 1;
}
.custom-tooltip .tooltip-inner {
  text-align: left;
}

.badge {
  --bs-badge-padding-x: 0.6em;
  --bs-badge-padding-y: 0.3em;
  --bs-badge-font-size: 0.7em;
  --bs-badge-font-weight: 400;
  vertical-align: bottom;
}

.form-label {
  margin-bottom: 0.3rem;
}

.form-check-md-align {
  padding-top: 2.2rem;
}

.form-check-input:checked {
  background-color: #003f88;
  border-color: #003f88;
}
.form-check-input:focus {
  box-shadow: none;
}

.form-control:read-only {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}

.pagination {
  --bs-pagination-color: #003f88;
  --bs-pagination-border-color: rgb(227.25, 227.25, 227.25);
  --bs-pagination-hover-color: rgb(0, 44.1, 95.2);
  --bs-pagination-hover-bg: rgb(247.65, 247.65, 247.65);
  --bs-pagination-hover-border-color: rgb(227.25, 227.25, 227.25);
  --bs-pagination-focus-color: rgb(0, 44.1, 95.2);
  --bs-pagination-focus-bg: rgb(247.65, 247.65, 247.65);
  --bs-pagination-active-bg: #003f88;
  --bs-pagination-active-border-color: rgb(0, 44.1, 95.2);
  --bs-pagination-disabled-color: #999;
  --bs-pagination-disabled-bg: rgb(247.65, 247.65, 247.65);
  --bs-pagination-disabled-border-color: rgb(227.25, 227.25, 227.25);
}

.modal-header {
  border-bottom-color: rgb(227.25, 227.25, 227.25);
}
.modal-header .modal-title {
  color: #003f88;
}

.modal-body {
  background-color: #f0f0f0;
}

.modal-footer {
  border-top-color: rgb(227.25, 227.25, 227.25);
}

.switchStatus .form-check-input {
  border-color: #bc2c1a;
  background-color: #bc2c1a;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.switchStatus .form-check-input + label {
  color: #999;
}
.switchStatus .form-check-input + label .labelChecked {
  display: none;
}
.switchStatus .form-check-input:checked {
  border-color: #00a676;
  background-color: #00a676;
}
.switchStatus .form-check-input:checked + label {
  color: #222;
}
.switchStatus .form-check-input:checked + label .labelChecked {
  display: inline;
}
.switchStatus .form-check-input:checked + label .labelUnchecked {
  display: none;
}
.switchStatus .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

#inputIfSwitch {
  display: none;
}

@media (max-width: 1199.98px) {
  .input-group .mobile100 {
    width: 100%;
    margin-bottom: 0.5rem;
  }
}
@media (max-width: 767.98px) {
  .form-check-md-align {
    padding-top: 0;
  }
}
/* header */
header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.2rem;
  height: var(--h-header);
  padding: 10px 15px;
  background-color: #003f88;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  color: #fff;
}
header #leftHeader {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1rem;
}
header #leftHeader #hamburger {
  cursor: pointer;
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -ms-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease;
}
header #leftHeader #hamburger .icoHamburger i {
  font-size: 2.2rem;
}
header #leftHeader #hamburger .icoHamburger i.open {
  display: block;
}
header #leftHeader #hamburger .icoHamburger i.close {
  display: none;
}
header #leftHeader #hamburger:hover {
  opacity: 0.75;
}
header #leftHeader #mainLogo {
  width: 200px;
  animation: logo-in 0.75s ease-in-out 0.5s;
  animation-fill-mode: both;
}
header #leftHeader #mainLogo img {
  max-width: 100%;
}
header #leftHeader #mainInt {
  line-height: 1.2;
  text-decoration: none;
  animation: logo-in 0.75s ease-in-out 0.5s;
  animation-fill-mode: both;
}
header #leftHeader #mainInt .mainIntTop {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
}
header #leftHeader #mainInt .mainIntBottom {
  display: block;
  font-size: 0.9rem;
  opacity: 0.5;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
header #leftHeader #mainInt:hover .mainIntBottom {
  opacity: 1;
}
header #rightHeader {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 2rem;
}
header #rightHeader #utenteHeader {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.8rem;
  cursor: pointer;
}
header #rightHeader #utenteHeader .txtUtente {
  text-align: right;
  line-height: 1.2;
}
header #rightHeader #utenteHeader .txtUtente .nomeUtente {
  display: block;
  font-weight: 500;
}
header #rightHeader #utenteHeader .txtUtente .infoUtente {
  display: block;
  font-size: 0.9rem;
  opacity: 0.5;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
header #rightHeader #utenteHeader .icoUtente i {
  font-size: 2.2rem;
}
header #rightHeader #utenteHeader:hover .txtUtente .infoUtente {
  opacity: 1;
}
header #navHeader ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}
header #navHeader ul li a {
  padding: 0 1rem;
  border-right: 1px solid #fff;
  text-decoration: none;
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -ms-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease;
}
header #navHeader ul li a:hover {
  opacity: 0.75;
}

/* left menu */
#leftMenu {
  position: fixed;
  top: var(--h-header);
  bottom: 0;
  right: 100vw;
  left: calc(var(--w-leftMenu) * -1);
  z-index: 999;
  width: var(--w-leftMenu);
  background-color: #222;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  color: #fff;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
#leftMenu .leftMenuInt {
  position: relative;
  height: 3.3rem;
}
#leftMenu .leftMenuInt #pinMenu {
  display: none;
  position: absolute;
  top: 1rem;
  right: 0.8rem;
  font-size: 1.1rem;
  cursor: pointer;
  opacity: 0.5;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
#leftMenu .leftMenuInt #pinMenu.pinned {
  opacity: 1;
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#leftMenu .leftMenuInt #pinMenu:hover {
  opacity: 0.75;
}
#leftMenu .leftMenuScroll {
  height: calc(100vh - var(--h-header) - 3.3rem - 3.6rem);
  overflow-y: auto;
}
#leftMenu .leftMenuScroll .leftMenuTop {
  padding: 0 1rem;
}
#leftMenu .leftMenuScroll .leftMenuTop .leftMenuIntSub {
  display: block;
  margin-left: -1rem;
  margin-right: -1rem;
  padding: 0.4rem 3rem 0.4rem 1rem;
  line-height: 1.4;
}
#leftMenu .leftMenuScroll .leftMenuTop .leftMenuIntSub:last-child {
  margin-bottom: 2rem;
}
#leftMenu .leftMenuScroll .leftMenuTop .leftMenuIntSub.azienda {
  background-color: #4374ad;
  font-size: 1.2rem;
  font-weight: 500;
}
#leftMenu .leftMenuScroll .leftMenuTop .leftMenuIntSub.progetto {
  background-color: #003f88;
}
#leftMenu .leftMenuScroll .leftMenuTop a.leftMenuIntSub {
  position: relative;
  text-decoration: none;
}
#leftMenu .leftMenuScroll .leftMenuTop a.leftMenuIntSub:hover.azienda {
  background-color: rgb(0, 44.1, 95.2);
}
#leftMenu .leftMenuScroll .leftMenuTop a.leftMenuIntSub:hover.progetto {
  background-color: rgb(55.61, 96.28, 143.59);
}
#leftMenu .leftMenuScroll .leftMenuTop a.leftMenuIntSub:after {
  display: block;
  content: "\f130";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-size: 1.2rem;
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -13px;
}
#leftMenu .leftMenuScroll h4 {
  margin: 0.5rem 1rem 1rem;
  padding-bottom: 1.2rem;
  border-bottom: 1px dotted #ccc;
  color: #ccc;
}
#leftMenu .leftMenuScroll ul {
  margin: 0 0.5rem;
  padding: 0 0 1rem;
  list-style: none;
}
#leftMenu .leftMenuScroll ul li {
  margin: 0.1rem 0;
}
#leftMenu .leftMenuScroll ul li a {
  display: block;
  text-decoration: none;
  padding: 0.4rem 0.5rem;
  border-radius: 5px;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
#leftMenu .leftMenuScroll ul li a:hover {
  background-color: #003f88;
}
#leftMenu .leftMenuScroll ul li a i {
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 0.5rem;
  border-radius: 50%;
  background-color: rgb(178.5, 178.5, 178.5);
  font-size: 1rem;
  line-height: 1.8rem;
  text-align: center;
}
#leftMenu .leftMenuScroll ul li.wSubMenu > a {
  position: relative;
  padding-right: 20px;
}
#leftMenu .leftMenuScroll ul li.wSubMenu > a:after {
  position: absolute;
  top: 12px;
  right: 8px;
  display: block;
  content: "\f231";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-size: 0.8rem;
  line-height: 1;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
#leftMenu .leftMenuScroll ul li.wSubMenu > ul {
  height: 0;
  padding: 0;
  overflow: hidden;
}
#leftMenu .leftMenuScroll ul li.wSubMenu > ul li a {
  padding-left: 1.2rem;
}
#leftMenu .leftMenuScroll ul li.wSubMenu.active > a {
  background-color: rgb(59.5, 59.5, 59.5);
}
#leftMenu .leftMenuScroll ul li.wSubMenu.active > a:hover {
  background-color: rgb(72.25, 72.25, 72.25);
}
#leftMenu .leftMenuScroll ul li.wSubMenu.active > a:after {
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
#leftMenu .leftMenuFooter {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 1.2rem 1rem;
}
#leftMenu .leftMenuFooter p {
  margin-bottom: 0;
  font-size: 0.8rem;
  color: #ccc;
}

body.menuLeftActive header #leftHeader #hamburger .icoHamburger i.open {
  display: none;
}
body.menuLeftActive header #leftHeader #hamburger .icoHamburger i.close {
  display: block;
}
body.menuLeftActive #leftMenu {
  right: calc(100vw - var(--w-leftMenu));
  left: 0;
}

@media (min-width: 1200px) {
  body.menuLeftActive .content {
    padding-left: var(--w-leftMenu);
  }
  #leftMenu .leftMenuInt #pinMenu {
    display: block;
  }
}
/* utente menu */
#utenteMenu {
  position: fixed;
  top: calc(var(--h-header) + 10px);
  right: calc(var(--w-utenteMenu) * -1);
  left: 100vw;
  z-index: 998;
  width: var(--w-utenteMenu);
  padding: 1rem;
  background-color: rgb(227.25, 227.25, 227.25);
  border-radius: 15px;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  overflow-y: auto;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
#utenteMenu #utenteMenuClose {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  font-size: 1.5rem;
  cursor: pointer;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
#utenteMenu #utenteMenuClose:hover {
  opacity: 0.75;
}
#utenteMenu .utenteMenuInt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.8rem;
  align-items: center;
  padding: 2rem 0;
}
#utenteMenu .utenteMenuInt i {
  font-size: 5rem;
  line-height: 1;
  color: #003f88;
}
#utenteMenu .utenteMenuInt .utenteMenuIntTxt {
  text-align: center;
}
#utenteMenu .utenteMenuInt .utenteMenuIntTxt .utenteMenuIntWelcome {
  display: block;
  font-size: 2rem;
  line-height: 1.1;
}
#utenteMenu .utenteMenuInt .utenteMenuIntTxt .utenteMenuIntMail {
  display: block;
  opacity: 0.5;
}
#utenteMenu .utenteMenuGroup {
  padding: 1rem;
  border-radius: 10px;
  background-color: #fff;
}
#utenteMenu .utenteMenuGroup:not(:last-child) {
  margin-bottom: 1rem;
}
#utenteMenu .utenteMenuGroup ul {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
#utenteMenu .utenteMenuGroup ul li a {
  display: block;
  text-decoration: none;
}
#utenteMenu .utenteMenuGroup ul li a:hover {
  opacity: 0.75;
}
#utenteMenu .utenteMenuGroup ul li a i {
  display: inline-block;
  width: 2.2rem;
  height: 2.2rem;
  margin-right: 0.5rem;
  border-radius: 50%;
  background-color: rgb(227.25, 227.25, 227.25);
  font-size: 1.2rem;
  line-height: 2.2rem;
  text-align: center;
}
#utenteMenu .utenteMenuGroup ul li:not(:last-child) {
  margin-bottom: 0.8rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px dotted #999;
}

body.menuUtenteActive #utenteMenu {
  right: 10px;
  left: calc(100vw - var(--w-utenteMenu) - 25px);
}

/* main */
main {
  min-height: calc(100vh - var(--h-header) - 50px);
}
main section.sectionMainTitle {
  padding: 1.5rem 0;
}
main section.sectionMainTitle h1 {
  margin-bottom: 0;
  color: #003f88;
}
main section.sectionMainTitle h2 {
  margin-top: 0.2rem;
  margin-bottom: 0;
  color: #222;
}
main section.sectionMainTitle h3 {
  margin-bottom: 0;
  color: #999;
}
main section.sectionMainTitle .btnCont {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
main section.sectionDashboard {
  padding-bottom: 1.5rem;
}
main section.sectionDashboard .card {
  min-height: 100%;
}

body.sectionFooterVisible {
  padding-bottom: 6.2rem;
}
body.sectionFooterVisible main {
  min-height: calc(100vh - var(--h-header) - 6.2rem);
}
body.sectionFooterVisible .sectionFooterActions {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 996;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-top: 1px solid rgb(227.25, 227.25, 227.25);
  background-color: rgba(240, 240, 240, 0.9);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}
body.sectionFooterVisible .sectionFooterActions .row {
  justify-content: space-between;
}

.content {
  -webkit-transition: padding-left 250ms ease-out;
  -moz-transition: padding-left 250ms ease-out;
  -ms-transition: padding-left 250ms ease-out;
  -o-transition: padding-left 250ms ease-out;
  transition: padding-left 250ms ease-out;
}

.dotStatus {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
}
.dotStatus.on {
  background-color: #00a676;
}
.dotStatus.off {
  background-color: #bc2c1a;
}
.dotStatus.warning {
  background-color: #fdca40;
}

.legendaDot {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.legendaDot > div {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.btnIco {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  cursor: pointer;
}
.btnIco i {
  display: inline-block;
  width: 2.2rem;
  height: 2.2rem;
  border: 2px solid rgb(227.25, 227.25, 227.25);
  border-radius: 50%;
  background-color: #f0f0f0;
  font-size: 1.2rem;
  line-height: 2rem;
  text-align: center;
  color: #999;
  -webkit-transition: all 250ms ease;
  -moz-transition: all 250ms ease;
  -ms-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease;
}
.btnIco.btnIcoPlus i {
  color: #003f88;
  border-color: #003f88;
}
.btnIco.btnIcoPlus:hover i {
  background-color: #003f88;
  color: #fff;
}
.btnIco.btnIcoTrash:hover i {
  border-color: #bc2c1a;
  background-color: #bc2c1a;
  color: #fff;
}
.btnIco.btnIcoAttach:hover i {
  border-color: #003f88;
  background-color: #003f88;
  color: #fff;
}
.btnIco.btnIcoCompetenze:hover i {
  border-color: #fff;
  background-color: #003f88;
  color: #fff;
}

.disabledByLoading {
  opacity: 0.35;
  cursor: not-allowed !important;
}

.btnBack {
  display: inline-block;
  margin-bottom: 0.2rem;
  text-decoration: none;
  cursor: pointer;
}
.btnBack:hover {
  opacity: 0.75;
}

body.btnBackFixed .sectionMainTitle .container-fluid {
  padding-top: 1.4rem;
}
body.btnBackFixed .sectionMainTitle .container-fluid .btnBack {
  position: fixed;
  top: calc(var(--h-header) + 0.5rem);
  z-index: 990;
  margin-left: -0.25rem;
  padding: 0.35rem 0.5rem;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 1rem;
  background-color: #f0f0f0;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}
body.btnBackFixed .sectionMainTitle .container-fluid .btnBack:hover {
  opacity: 0.9;
}

.eyeToggle {
  cursor: pointer;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
.eyeToggle:hover {
  opacity: 0.75;
}

.altroInput,
.altroDiv {
  display: none;
}

.validation-summary-valid {
  display: none;
}

.validation-summary-errors ul {
  margin-bottom: 0;
}

.formTextCard {
  position: relative;
  padding: 1.2rem;
  margin: 1.5rem 0 0;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: rgb(247.65, 247.65, 247.65);
}
.formTextCard p:last-child,
.formTextCard ul:last-child,
.formTextCard table:last-child {
  margin-bottom: 0;
}
.formTextCard ul {
  padding-left: 1rem;
}
.formTextCard:before {
  position: absolute;
  top: -22px;
  left: 22px;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 22px 22px 22px;
  border-color: transparent transparent rgb(227.25, 227.25, 227.25) transparent;
}
.formTextCard:after {
  position: absolute;
  top: -20px;
  left: 24px;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 20px 20px 20px;
  border-color: transparent transparent rgb(247.65, 247.65, 247.65) transparent;
}

.ulBoxElenco {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ulBoxElenco li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin: 0.5rem 0;
  padding: 1.2rem;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: rgb(247.65, 247.65, 247.65);
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 250ms ease;
  -moz-transition: all 250ms ease;
  -ms-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease;
}
.ulBoxElenco li a .leftBoxElenco {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
}
.ulBoxElenco li a .leftBoxElenco .dotStatus {
  flex: auto 0;
}
.ulBoxElenco li a .leftBoxElenco .boxElencoDati {
  flex: 1 0;
}
.ulBoxElenco li a .leftBoxElenco .boxElencoDati h3 {
  margin-bottom: 0;
  font-size: 1.2rem;
  line-height: 1.2rem;
  color: #003f88;
}
.ulBoxElenco li a .leftBoxElenco .boxElencoDati p {
  margin-bottom: 0;
  opacity: 0.5;
}
.ulBoxElenco li a i {
  font-size: 2rem;
}
.ulBoxElenco li a:hover {
  border-color: rgb(0, 51.1875, 110.5);
  background-color: #003f88;
  color: #fff;
}
.ulBoxElenco li a:hover .leftBoxElenco .boxElencoDati h3 {
  color: #fff;
}
.ulBoxElenco.ulBoxElencoAlto li a {
  min-height: var(--minh-ulButton);
}

.ulBoxElencoSezioni {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ulBoxElencoSezioni li .boxElencoSezioni {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0.5rem 0;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: rgb(247.65, 247.65, 247.65);
  overflow: hidden;
}
.ulBoxElencoSezioni li .boxElencoSezioni .leftBoxElencoSezioni {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.8rem;
  padding: 1.2rem;
}
.ulBoxElencoSezioni li .boxElencoSezioni .leftBoxElencoSezioni .dotStatus {
  flex: auto 0;
}
.ulBoxElencoSezioni li .boxElencoSezioni .leftBoxElencoSezioni .boxElencoSezioniDati {
  flex: 1 0;
}
.ulBoxElencoSezioni li .boxElencoSezioni .leftBoxElencoSezioni .boxElencoSezioniDati h3 {
  margin-bottom: 0.2rem;
  font-size: 1.2rem;
  line-height: 1;
  color: #003f88;
}
.ulBoxElencoSezioni li .boxElencoSezioni .leftBoxElencoSezioni .boxElencoSezioniDati p {
  margin-bottom: 0;
  line-height: 1;
  opacity: 0.5;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex: 0 0 auto;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
  position: relative;
  padding: 1rem 0.5rem 1rem 1rem;
  border-left: 1px solid rgb(227.25, 227.25, 227.25);
  text-decoration: none;
  -webkit-transition: all 250ms ease;
  -moz-transition: all 250ms ease;
  -ms-transition: all 250ms ease;
  -o-transition: all 250ms ease;
  transition: all 250ms ease;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a span i {
  font-size: 2.1rem;
  color: #4374ad;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a .rightBoxElencoSezioniTxt {
  flex: 1 0;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a .rightBoxElencoSezioniTxt h4 {
  margin-bottom: 0.2rem;
  font-size: 1rem;
  line-height: 1;
  color: #222;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a .rightBoxElencoSezioniTxt p {
  margin-bottom: 0;
  font-size: 0.9rem;
  line-height: 1;
  opacity: 0.5;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a > i {
  font-size: 2rem;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:nth-child(1) {
  background-color: rgb(222.13, 231.44, 242.27);
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:nth-child(2) {
  background-color: rgb(233.15875, 239.345, 246.54125);
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:nth-child(3) {
  background-color: rgb(244.1875, 247.25, 250.8125);
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:nth-child(4) {
  background-color: white;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:not(.disabledByPolicy) {
  cursor: pointer;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:not(.disabledByPolicy):hover {
  border-color: rgb(0, 51.1875, 110.5);
  background-color: #4374ad;
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:not(.disabledByPolicy):hover span i {
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:not(.disabledByPolicy):hover .rightBoxElencoSezioniTxt h4 {
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a.disabledByPolicy:hover > i:before {
  -moz-transform: none;
  -webkit-transform: none;
  -o-transform: none;
  -ms-transform: none;
  transform: none;
}
.ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a.disabledByPolicy:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0.75;
  position: absolute;
  top: 0;
  left: 0;
  cursor: not-allowed;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .leftBoxElencoSezioni .bi {
  font-size: 1.8rem;
  color: #999;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .leftBoxElencoSezioni .bi.checkBoxChecked {
  display: none;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .leftBoxElencoSezioni .bi.checkBoxUnchecked {
  display: block;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .leftBoxElencoSezioni .boxElencoSezioniDati input {
  display: none;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .rightBoxElencoSezioni {
  display: none;
  padding: 1.2rem;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .rightBoxElencoSezioni .btnIco {
  padding-right: 1rem;
  border-right: 1px solid #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .rightBoxElencoSezioni .form-check {
  margin-bottom: 0;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked {
  border-color: rgb(0, 51.1875, 110.5);
  background-color: #003f88;
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .leftBoxElencoSezioni .bi {
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .leftBoxElencoSezioni .bi.checkBoxChecked {
  display: block;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .leftBoxElencoSezioni .bi.checkBoxUnchecked {
  display: none;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .leftBoxElencoSezioni .boxElencoSezioniDati h3 {
  color: #fff;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .rightBoxElencoSezioni {
  display: flex;
}
.ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck.checked .rightBoxElencoSezioni .form-check input {
  border-color: #fff;
}

#noResults {
  display: none;
}
#noResults .noResultsContent {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.6rem;
  padding: 1.2rem;
  border: 1px solid rgb(164, 214.5, 244);
  border-radius: 5px;
  background-color: rgb(209.5, 234.75, 249.5);
}
#noResults .noResultsContent p {
  color: #003f88;
  min-height: auto;
  margin: 0;
}
#noResults .noResultsContent i {
  font-size: 1.2rem;
  color: #003f88;
}

.noResultContainer {
  margin-top: 1.5rem;
}
.noResultContainer #noResults {
  display: block;
}

.ulDocumenti {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ulDocumenti .boxDocumento {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.2rem;
}
.ulDocumenti .boxDocumento:not(:last-child) {
  padding-bottom: 1.2rem;
  border-bottom: 1px solid rgb(227.25, 227.25, 227.25);
}
.ulDocumenti .boxDocumento .boxDocumentoStatus i {
  display: block;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 50%;
  font-size: 1.2rem;
  line-height: 2.2rem;
  color: #fff;
  text-align: center;
}
.ulDocumenti .boxDocumento .boxDocumentoRight {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  width: 100%;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo {
  flex: auto 1;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo h4,
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo h5 {
  margin-bottom: 0.3rem;
  font-size: 1.2rem;
  color: #003f88;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo p {
  margin-bottom: 0;
  font-size: 0.875rem;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo p span:not(:first-child):before {
  content: "- ";
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo .input-group {
  width: 100%;
  margin-top: 0.5rem;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo .legendaDot {
  font-size: 0.875rem;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo .legendaDot > div {
  gap: 0.25rem;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo .legendaDot .dotStatus {
  width: 0.75rem;
  height: 0.75rem;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions {
  flex: 0 0 auto;
  text-align: right;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions a {
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions a:hover {
  opacity: 0.75;
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions a:not(:first-child) {
  margin-left: 0.5rem;
  padding-left: 0.5rem;
  border-left: 1px solid rgb(227.25, 227.25, 227.25);
}
.ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions .form-check {
  display: inline-block;
  margin-left: 0.5rem;
  padding-left: 3.2rem;
  border-left: 1px solid rgb(227.25, 227.25, 227.25);
}
.ulDocumenti .boxDocumento.boxDocumentoDefault .boxDocumentoStatus i, .ulDocumenti .boxDocumento.boxDocumentoMancante .boxDocumentoStatus i {
  background-color: #999;
}
.ulDocumenti .boxDocumento.boxDocumentoOk .boxDocumentoStatus i {
  background-color: #00a676;
}
.ulDocumenti .boxDocumento.boxDocumentoAttesa .boxDocumentoStatus i {
  background-color: #fdca40;
}

.ulButton {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ulButton li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: var(--minh-ulButton);
  margin: 0.5rem 0;
  padding: 1.2rem;
  border: 1px solid rgb(170.6625, 194.55, 222.3375);
  border-radius: 5px;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  font-weight: 500;
  line-height: 1.2rem;
  color: #003f88;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
.ulButton li a i {
  display: block;
  margin-bottom: 0.75rem;
  font-size: 2.6rem;
  color: #4374ad;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
.ulButton li a:not(.disabledByPolicy) {
  cursor: pointer;
}
.ulButton li a:not(.disabledByPolicy):hover {
  border-color: #4374ad;
  background-color: #4374ad !important;
  color: #fff;
}
.ulButton li a:not(.disabledByPolicy):hover i {
  color: #fff;
}
.ulButton li a.disabledByPolicy:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0.75;
  position: absolute;
  top: 0;
  left: 0;
  cursor: not-allowed;
}
.ulButton.type1 li a {
  background-color: rgb(189.04375, 207.725, 229.45625);
}
.ulButton.type2 li a {
  background-color: rgb(200.0725, 215.63, 233.7275);
}
.ulButton.type3 li a {
  background-color: rgb(211.10125, 223.535, 237.99875);
}
.ulButton.type4 li a {
  background-color: rgb(222.13, 231.44, 242.27);
}
.ulButton.type5 li a {
  background-color: rgb(233.15875, 239.345, 246.54125);
}
.ulButton.type6 li a {
  background-color: rgb(244.1875, 247.25, 250.8125);
}
.ulButton.type7 li a {
  background-color: rgb(233.15875, 239.345, 246.54125);
}
.ulButton.type8 li a {
  background-color: rgb(222.13, 231.44, 242.27);
}
.ulButton.type9 li a {
  background-color: rgb(211.10125, 223.535, 237.99875);
}
.ulButton.type10 li a {
  background-color: rgb(200.0725, 215.63, 233.7275);
}
.ulButton.type11 li a {
  background-color: rgb(189.04375, 207.725, 229.45625);
}
.ulButton.type12 li a {
  background-color: rgb(178.015, 199.82, 225.185);
}
.ulButton.type13 li a {
  background-color: rgb(189.04375, 207.725, 229.45625);
}
.ulButton.type14 li a {
  background-color: rgb(200.0725, 215.63, 233.7275);
}
.ulButton.type15 li a {
  background-color: rgb(211.10125, 223.535, 237.99875);
}
.ulButton.type16 li a {
  background-color: rgb(222.13, 231.44, 242.27);
}
.ulButton.type17 li a {
  background-color: rgb(233.15875, 239.345, 246.54125);
}
.ulButton.type18 li a {
  background-color: rgb(244.1875, 247.25, 250.8125);
}

.calendarioCont {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.calendarioCont .calendarioItem {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: calc(14.2857142857% - 0.5rem);
}
.calendarioCont .calendarioItem.active {
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: rgb(247.65, 247.65, 247.65);
  cursor: pointer;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
.calendarioCont .calendarioItem.active:hover {
  opacity: 0.75;
}
.calendarioCont .calendarioItem.active:nth-child(7n+6) {
  background-color: rgb(254.8497409326, 251.018134715, 240.6502590674);
}
.calendarioCont .calendarioItem.active:nth-child(7n+7) {
  background-color: rgb(254.585492228, 244.0155440415, 215.414507772);
}
.calendarioCont .calendarioItem.active.today {
  outline: 2px solid #4374ad;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}
.calendarioCont .calendarioItem.active .calendarioItemBody {
  padding: 0.5rem;
  text-align: center;
}
.calendarioCont .calendarioItem.active .calendarioItemBody .giornoTxt {
  display: block;
  font-size: 0.8rem;
}
.calendarioCont .calendarioItem.active .calendarioItemBody .giornoNum {
  display: block;
  font-size: 1.5rem;
  line-height: 1.1;
  font-weight: 500;
}
.calendarioCont .calendarioItem.active .calendarioItemActions {
  padding: 0.5rem;
  background-color: rgba(67, 116, 173, 0.25);
}
.calendarioCont .calendarioItem.active .calendarioItemActions .calendarioItemActionsInfo {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  min-height: 2rem;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1;
  color: #999;
}
.calendarioCont .calendarioItem.active .calendarioItemActions .calendarioItemActionsInfo:before {
  display: block;
  content: "\f1f6";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-size: 1.4rem;
}
.calendarioCont .calendarioItem.active.assente .calendarioItemActions .calendarioItemActionsInfo {
  color: #bc2c1a;
}
.calendarioCont .calendarioItem.active.assente .calendarioItemActions .calendarioItemActionsInfo:before {
  content: "\f1f5";
}
.calendarioCont .calendarioItem.active.presente .calendarioItemActions .calendarioItemActionsInfo {
  color: #00a676;
}
.calendarioCont .calendarioItem.active.presente .calendarioItemActions .calendarioItemActionsInfo:before {
  content: "\f1e2";
}
.calendarioCont .calendarioItem:not(.active) .calendarioItemBody {
  display: none;
}
.calendarioCont .calendarioItem:not(.active) .calendarioItemActions {
  display: none;
}
.calendarioCont.calendarioContInput .calendarioItem.active .calendarioItemActions .calendarioItemActionsInfo input {
  text-align: center;
}
.calendarioCont.calendarioContInput .calendarioItem.active .calendarioItemActions .calendarioItemActionsInfo:before {
  content: "\f597";
}

.boxIntervento {
  align-items: center;
}
.boxIntervento hr {
  margin: 0 0 1rem;
}

.ulBoxCalendario {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ulBoxCalendario li {
  display: none;
}
.ulBoxCalendario li.active {
  display: flex;
  justify-items: flex-start;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  padding: 0.5rem;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: rgb(247.65, 247.65, 247.65);
}
.ulBoxCalendario li.active:not(:last-child) {
  margin-bottom: 0.5rem;
}
.ulBoxCalendario li.active:nth-child(7n+6) {
  background-color: rgb(254.8497409326, 251.018134715, 240.6502590674);
}
.ulBoxCalendario li.active:nth-child(7n+7) {
  background-color: rgb(254.585492228, 244.0155440415, 215.414507772);
}
.ulBoxCalendario li.active.today {
  outline: 2px solid #4374ad;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}
.ulBoxCalendario li.active.liWarning {
  border-bottom: 5px solid #fdca40;
}
.ulBoxCalendario li.active.liWarning .boxCalendarioEnd .boxCalendarioAlert.alertWarning {
  display: flex !important;
}
.ulBoxCalendario li.active.liDanger {
  border-bottom: 5px solid #bc2c1a;
}
.ulBoxCalendario li.active.liDanger .boxCalendarioEnd .boxCalendarioAlert.alertDanger {
  display: flex !important;
}
.ulBoxCalendario li.active .boxCalendarioData {
  flex: 0 0 auto;
  width: 5rem;
  padding-right: 0.5rem;
  border-right: 1px solid rgb(227.25, 227.25, 227.25);
  text-align: center;
}
.ulBoxCalendario li.active .boxCalendarioData .giornoTxt {
  display: block;
  font-size: 0.8rem;
}
.ulBoxCalendario li.active .boxCalendarioData .giornoNum {
  display: block;
  font-size: 1.5rem;
  line-height: 1.1;
  font-weight: 500;
}
.ulBoxCalendario li.active .form-check {
  margin: 0;
}
.ulBoxCalendario li.active .boxCalendarioOre {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.ulBoxCalendario li.active .boxCalendarioOre label {
  margin: 0;
}
.ulBoxCalendario li.active .boxCalendarioOre input {
  width: 5rem;
}
.ulBoxCalendario li.active .boxCalendarioOreRD {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.ulBoxCalendario li.active .boxCalendarioOreRD label {
  margin: 0;
}
.ulBoxCalendario li.active .boxCalendarioOreRD span {
  padding: 0.3rem 0.8rem;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: #f0f0f0;
  color: #999;
}
.ulBoxCalendario li.active textarea.form-control {
  width: 25%;
}
.ulBoxCalendario li.active .boxCalendarioEnd {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  flex: 1 0 auto;
}
.ulBoxCalendario li.active .boxCalendarioEnd .boxCalendarioAlert {
  display: none;
  align-items: center;
  gap: 0.5rem;
  padding: 0.3rem 0.5rem;
  border: 1px solid rgb(227.25, 227.25, 227.25);
  border-radius: 5px;
  background-color: #f0f0f0;
  font-size: 0.9rem;
  line-height: 1.1;
  color: #999;
}
.ulBoxCalendario li.active .boxCalendarioEnd .boxCalendarioAlert i {
  font-size: 1.2rem;
}
.ulBoxCalendario li.active .boxCalendarioEnd .boxCalendarioAlert.alertWarning i {
  color: #fdca40;
}
.ulBoxCalendario li.active .boxCalendarioEnd .boxCalendarioAlert.alertDanger i {
  color: #bc2c1a;
}

.filterCont {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgb(227.25, 227.25, 227.25);
}
.filterCont .input-group {
  width: 50%;
}
.filterCont .intCalendario {
  width: 12rem;
  margin-bottom: 0;
  text-align: center;
}
.filterCont .navCalendario {
  font-size: 1.5rem;
  color: #003f88;
  cursor: pointer;
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -ms-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease;
}
.filterCont .navCalendario:hover {
  opacity: 0.75;
}
.filterCont .selectDate {
  width: 8rem;
}
.filterCont #resetFilter {
  cursor: pointer;
  -webkit-transition: opacity 250ms ease;
  -moz-transition: opacity 250ms ease;
  -ms-transition: opacity 250ms ease;
  -o-transition: opacity 250ms ease;
  transition: opacity 250ms ease;
}
.filterCont #resetFilter:hover {
  opacity: 0.75;
}

ul.dirTree {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}
ul.dirTree::before {
  content: "";
  display: block;
  position: absolute;
  left: 1rem;
  top: 1.2rem;
  bottom: 1.2rem;
  width: 1px;
  border-left: 1px dotted #4374ad;
}
ul.dirTree li {
  display: block;
  position: relative;
  padding: 0.25rem 0;
}
ul.dirTree li a {
  display: block;
  position: relative;
  padding: 0.25rem 0.25rem 0.25rem 2.2rem;
  border-radius: 5px;
  text-decoration: none;
  -webkit-transition: all 250ms ease-out;
  -moz-transition: all 250ms ease-out;
  -ms-transition: all 250ms ease-out;
  -o-transition: all 250ms ease-out;
  transition: all 250ms ease-out;
}
ul.dirTree li a::before {
  display: block;
  position: absolute;
  top: 0.35rem;
  left: 0.5rem;
  content: "\f3d1";
  font-family: bootstrap-icons;
  font-weight: 400 !important;
  font-variant: normal;
  line-height: 1;
  font-size: 1.2rem;
  color: #4374ad;
}
ul.dirTree li a:hover {
  background-color: rgb(236.835, 241.98, 247.965);
}
ul.dirTree li.active a {
  background-color: rgb(225.80625, 234.075, 243.69375);
  font-weight: 700;
  color: #003f88;
}
ul.dirTree li.active a::before {
  content: "\f3d8";
}
ul.dirTree li ul {
  margin: 0;
  padding: 0 0 0 1.5rem;
  list-style: none;
}
ul.dirTree li ul::before {
  content: "";
  display: block;
  position: absolute;
  left: 2.5rem;
  top: 3.4rem;
  bottom: 1.7rem;
  width: 1px;
  border-left: 1px dotted #4374ad;
}
ul.dirTree li ul li::before {
  content: "";
  display: block;
  position: absolute;
  top: 1.2rem;
  left: -0.5rem;
  width: 1.5rem;
  height: 1px;
  border-top: 1px dotted #4374ad;
}

.cardMainTitle {
  margin-bottom: 2.5rem;
}
.cardMainTitle h1,
.cardMainTitle h2,
.cardMainTitle h3,
.cardMainTitle h4,
.cardMainTitle h5,
.cardMainTitle h6,
.cardMainTitle p {
  min-height: 4rem;
  margin-bottom: 0;
  color: #999;
}
.cardMainTitle .btnCont .btn {
  margin-bottom: -1.2rem;
}

.cardAccordion:not(.opened) {
  height: 5rem;
  overflow: hidden;
}
.cardAccordion .cardMainTitle {
  position: relative;
  margin-bottom: 4rem;
  cursor: pointer;
}
.cardAccordion .cardMainTitle [class^=col] h1,
.cardAccordion .cardMainTitle [class^=col] h2,
.cardAccordion .cardMainTitle [class^=col] h3,
.cardAccordion .cardMainTitle [class^=col] h4,
.cardAccordion .cardMainTitle [class^=col] h5,
.cardAccordion .cardMainTitle [class^=col] h6,
.cardAccordion .cardMainTitle [class^=col] p {
  min-height: auto;
  margin-right: 2rem;
}
.cardAccordion .cardMainTitle:before {
  position: absolute;
  top: -0.2rem;
  right: 0.8rem;
  display: block;
  content: "\f282";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-size: 1.4rem;
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.cardAccordion.opened .cardMainTitle:before {
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.cardSubTitle {
  padding-bottom: 2rem;
}
.cardSubTitle h1,
.cardSubTitle h2,
.cardSubTitle h3,
.cardSubTitle h4,
.cardSubTitle h5,
.cardSubTitle h6,
.cardSubTitle p {
  display: inline;
  margin-bottom: 0;
  padding-right: 10px;
  background-color: #fff;
  font-weight: normal;
  color: #003f88;
}
.cardSubTitle:after {
  content: "";
  display: block;
  height: 1px;
  margin-top: -8px;
  background-color: rgb(227.25, 227.25, 227.25);
}

.rowSubAccordion:not(.opened) {
  height: 3rem;
  overflow: hidden;
}
.rowSubAccordion .cardSubTitle {
  position: relative;
  cursor: pointer;
}
.rowSubAccordion .cardSubTitle h1,
.rowSubAccordion .cardSubTitle h2,
.rowSubAccordion .cardSubTitle h3,
.rowSubAccordion .cardSubTitle h4,
.rowSubAccordion .cardSubTitle h5,
.rowSubAccordion .cardSubTitle h6,
.rowSubAccordion .cardSubTitle p {
  margin-right: 2rem;
}
.rowSubAccordion .cardSubTitle:after {
  margin-right: 2rem;
}
.rowSubAccordion .cardSubTitle:before {
  position: absolute;
  top: -0.3rem;
  right: 0.8rem;
  display: block;
  content: "\f282";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-size: 1.4rem;
  -webkit-transition: all 300ms ease-out;
  -moz-transition: all 300ms ease-out;
  -ms-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}
.rowSubAccordion.opened .cardSubTitle:before {
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.cardSubSubTitle h1,
.cardSubSubTitle h2,
.cardSubSubTitle h3,
.cardSubSubTitle h4,
.cardSubSubTitle h5,
.cardSubSubTitle h6,
.cardSubSubTitle p {
  margin-bottom: 0;
  font-size: 1.2rem;
  font-weight: 500;
  text-transform: capitalize;
  color: #003f88;
}

.cardMainFooter {
  justify-content: space-between;
  padding-top: 1.5rem;
}
.cardMainFooter hr {
  margin: 0 0 1.5rem;
}

/* access denied */
.errorBox {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  height: calc(100vh - var(--h-header) - 90px);
  padding: 20px;
  color: #bc2c1a;
}
.errorBox .errorIco {
  font-size: 6rem;
}
.errorBox .errorTxt .h1 {
  margin: 0;
}
.errorBox .errorTxt a {
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  color: #999;
}

/* datatables */
.dataTableV1,
.dataTableV2,
.dataTableV3,
.dataTableV4 {
  width: 100%;
  line-height: 1.2;
}
.dataTableV1 td,
.dataTableV2 td,
.dataTableV3 td,
.dataTableV4 td {
  vertical-align: middle;
}

th.alignRight,
td.alignRight {
  text-align: right !important;
}
th.alignRight input,
td.alignRight input {
  text-align: right !important;
}

thead .dangerCell {
  background-color: #bc2c1a !important;
  color: #fff;
}
thead .successCell {
  background-color: #00a676 !important;
  color: #fff;
}

tbody .dangerCell,
tfoot .dangerCell {
  color: #bc2c1a;
}
tbody .successCell,
tfoot .successCell {
  color: #00a676;
}
tbody .addValue,
tbody .modValue,
tfoot .addValue,
tfoot .modValue {
  position: relative;
}
tbody .addValue::after,
tbody .modValue::after,
tfoot .addValue::after,
tfoot .modValue::after {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0.8rem;
  z-index: 1;
  width: 1.6rem;
  height: 1.6rem;
  margin-top: -0.8rem;
  border-radius: 50%;
  font-family: bootstrap-icons;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1.6rem;
  text-align: center;
  color: #fff;
}
tbody .addValue::after,
tfoot .addValue::after {
  content: "\f4fe";
  background-color: #4374ad;
  font-size: 1rem;
}
tbody .modValue::after,
tfoot .modValue::after {
  content: "\f4cb";
  background-color: #fdca40;
  font-size: 0.8rem;
}
tbody .icoCell,
tfoot .icoCell {
  cursor: pointer;
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-family: bootstrap-icons;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  font-size: 1rem;
  -webkit-transition: opacity 250ms ease-out;
  -moz-transition: opacity 250ms ease-out;
  -ms-transition: opacity 250ms ease-out;
  -o-transition: opacity 250ms ease-out;
  transition: opacity 250ms ease-out;
}
tbody .icoCell:hover,
tfoot .icoCell:hover {
  opacity: 0.75;
}
tbody .icoCell.delete,
tfoot .icoCell.delete {
  background-color: #bc2c1a;
  line-height: 1.6rem;
}
tbody .icoCell.delete::after,
tfoot .icoCell.delete::after {
  content: "\f5de";
}
tbody .icoCell.error,
tfoot .icoCell.error {
  margin-right: 0.2rem;
  background-color: #bc2c1a;
  line-height: 1.4rem;
}
tbody .icoCell.error::after,
tfoot .icoCell.error::after {
  content: "\f33b";
}

/* select2 */
.select2-container--classic .select2-selection--multiple {
  min-height: 35px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
}
.select2-container--classic .select2-selection--multiple ul {
  padding: 0 0.75rem;
}
.select2-container--classic .select2-selection--multiple ul li input {
  width: auto !important;
  padding-left: 0.5rem !important;
}
.select2-container--classic.select2-container--open .select2-selection--multiple {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #999;
  border-radius: var(--bs-border-radius);
}
.select2-container--classic .select2-dropdown--below {
  border-top: 1px solid;
}
.select2-container--classic .select2-results__option--highlighted[aria-selected] {
  margin: 5px;
  background-color: #ddd;
  color: #000;
}

/* footer */
footer {
  width: 100%;
  padding: 10px 0;
  color: #999;
}
footer .container .row [class^=col] span,
footer .container-fluid .row [class^=col] span {
  white-space: nowrap;
}
footer .container .row [class^=col] a,
footer .container-fluid .row [class^=col] a {
  text-decoration: none;
}

/* login */
body.loginBody {
  --h-header: 0px;
  background-color: #000;
}
body.loginBody main {
  height: calc(100vh - 50px);
  padding-left: 0 !important;
}
body.loginBody main section {
  height: 100%;
  padding: 3rem 0;
}
body.loginBody main section .container,
body.loginBody main section .container-fluid {
  height: 100%;
}
body.loginBody main section .container .row,
body.loginBody main section .container-fluid .row {
  height: 100%;
}
body.loginBody main section .container .row #logoLogin,
body.loginBody main section .container-fluid .row #logoLogin {
  display: block;
  position: relative;
  z-index: 3;
  max-width: 15rem;
  margin-bottom: 1rem;
}
body.loginBody main section .container .row .cardLogin .card-body,
body.loginBody main section .container-fluid .row .cardLogin .card-body {
  padding: 3rem;
}
body.loginBody main section .container .row .cardLogin .card-body h1,
body.loginBody main section .container-fluid .row .cardLogin .card-body h1 {
  color: #003f88;
}
body.loginBody footer {
  position: relative;
  z-index: 2;
  padding-left: 0 !important;
  color: #fff;
}

/* ######################
##### MEDIA-QUERIES #####
###################### */
@media (max-width: 1399.98px) {
  .ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a {
    padding: 1rem 1.2rem;
  }
  .ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a .rightBoxElencoSezioniTxt {
    display: none;
  }
  .ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a > i {
    display: none;
  }
}
@media (max-width: 991.98px) {
  /* main */
  .ulDocumenti .boxDocumento .boxDocumentoRight {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo {
    /*
    .form-text {
    }
    */
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo h4 {
    margin-bottom: 0.5rem;
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo p span {
    display: block;
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo p span:not(:first-child):before {
    display: none;
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoInfo .input-group {
    width: 100%;
  }
  .ulDocumenti .boxDocumento .boxDocumentoRight .boxDocumentoActions {
    text-align: left;
  }
}
@media (max-width: 767.98px) {
  .calendarioCont .calendarioItem {
    flex-basis: 100%;
  }
  .calendarioCont .calendarioItem:not(.active) {
    display: none;
  }
  .filterCont {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.8rem;
  }
  .filterCont .input-group {
    width: 100%;
  }
  .filterCont .dropdown {
    width: 100%;
  }
  .filterCont .dropdown button {
    width: 100%;
  }
  .filterCont .dropdown .dropdown-menu {
    width: 100%;
  }
  .ulBoxCalendario li.active {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
  .ulBoxCalendario li.active .boxCalendarioData {
    width: 100%;
    padding-right: 0;
    padding-bottom: 0.5rem;
    border-right: 0;
    border-bottom: 1px solid rgb(227.25, 227.25, 227.25);
    text-align: left;
  }
  .ulBoxCalendario li.active textarea.form-control {
    width: 100%;
  }
}
@media (max-width: 575.98px) {
  /* header */
  header #leftHeader #mainInt .mainIntTop {
    font-size: 1.2rem;
  }
  header #rightHeader {
    gap: 1rem;
  }
  header #rightHeader #utenteHeader .txtUtente {
    display: none;
  }
  header #navHeader ul li a {
    padding: 0 0.5rem;
    font-size: 0.875rem;
  }
  /* main */
  main section.sectionFooterActions .row [class^=col] .btn {
    display: block;
    margin-bottom: 0.5rem;
  }
  .ulBoxElencoSezioni li .boxElencoSezioni {
    flex-direction: column;
    align-items: stretch;
  }
  .ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a {
    flex: 1 1 auto;
    justify-content: center;
    border-top: 1px solid rgb(227.25, 227.25, 227.25);
  }
  .ulBoxElencoSezioni li .boxElencoSezioni .rightBoxElencoSezioni a:nth-child(1) {
    border-left: 0;
  }
  .ulBoxElencoSezioni li .boxElencoSezioni.boxElencoCheck .rightBoxElencoSezioni {
    padding-top: 0;
  }
}
@media (max-width: 480px) {
  /* menu left */
  body.menuLeftActive {
    --w-leftMenu: 100vw;
  }
  body.menuLeftActive #leftMenu {
    right: 0;
    left: 0;
    width: auto;
  }
  /* menu utente */
  #utenteMenu {
    top: var(--h-header);
    bottom: 0;
    border-radius: 0;
  }
  body.menuUtenteActive {
    --w-utenteMenu: 100vw;
  }
  body.menuUtenteActive #utenteMenu {
    right: 0;
    left: 0;
    width: auto;
  }
}
