.showHidePw {
	position: absolute;
	right: 0;
	top: -2px;
	font-size: 20px;
	transition: all 0.2s ease;
	padding: 10px 2px;
	cursor: pointer;
	z-index: 9999999;
}
.navbar {
	margin-bottom: 30px;
}
.navbar .navbar-form, .sidebar .navbar-form {
	display: none;
}
body.sidebar-mini .sidebar:hover .nav .nav, body:not(.sidebar-mini) .sidebar .nav .nav {
	padding-left: 10px;
}
.sidebar .logo a.logo-mini {
	margin-left: 25px;
	margin-right: 10px;
}
.sidebar .nav-mobile-menu li:first-child, .sidebar .nav-mobile-menu li:nth-child(3) {
    display: none;
}
.sidebar .nav-mobile-menu li ul li {
    display: block !important;
}
.sidebar .notification {
	position: absolute;
    top: 5px;
    border: 1px solid #FFF;
    left: 25px;
	font-size: 9px;
    background: #f44336;
    color: #FFFFFF;
    min-width: 20px;
    padding: 0px 5px;
    height: 20px;
    border-radius: 10px;
    text-align: center;
    line-height: 20px !important;
    vertical-align: middle;
    display: block;
}
.notifications-list li i{
	font-size: 12px !important;
	margin: -5px 5px 0px -10px !important;
}
.sidebar .nav-mobile-menu {
	margin-top: 10px;
}

.card .card-header .title {
	color: #FFFFFF;
}
.card .title {
	margin-top: 0;
	margin-bottom: 5px;
}
.card-product .card-footer .category a {
	color: inherit;
}
.content .form-group {
	margin: 25px 0 0 0;
}
.modal textarea {
	min-height: fit-content;
}
.modal-content .modal-footer input {
	margin-top: 0px;
}
label .required {
	color: indianred;
}
#utenti .card .stats {
	display: block;
}
#utenti .card .stats .category {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
#loader, .loader {
	position: absolute;
    left: 50%;
    margin-left: -60px;
	margin-top: 30px;
	border: 16px solid #f3f3f3;
	border-radius: 50%;
	border-top: 16px solid #9c27b0;
	width: 120px;
	height: 120px;
	-webkit-animation: spin 2s linear infinite;
	animation: spin 2s linear infinite;
}
@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.material-datatables .dataTables_length {
	float: left;
	text-align: left;
}
.material-datatables .dataTables_wrapper .dataTables_filter {
	text-align: right;
}
.dataTable > thead > tr > th, .dataTable > tfoot > tr > th {
	font-size: inherit;
	font-weight: bold;
}
div.dt-button-info {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 400px;
	margin-top: -100px;
	margin-left: -200px;
	background-color: white;
	border: 2px solid #111;
	box-shadow: 3px 3px 8px rgba(0,0,0,0.3);
	border-radius: 3px;
	text-align: center;
	z-index: 21;
}
div.dt-button-info h2 {
	padding: 0.5em;
	margin: 0;
	font-weight: normal;
	border-bottom: 1px solid #ddd;
	background-color: #f3f3f3;
}
div.dt-button-info > div {
	padding: 1em;
}
#trattamenti-table tr, #comunicazioni-table tr {
	cursor: pointer;
}
#trattamenti-table div[class*=label-] {
	width: 20px;
	height: 20px;
	margin: 0 auto;
}
.timeline.ticket-replies {
	margin: 0px;
	padding: 0% 5%;
}
.ticket-replies > li > .timeline-panel {
	width: 95%;
}
.ticket-replies > li > .timeline-badge {
	left: 100%;
}
.ticket-replies > li.timeline-inverted > .timeline-badge {
	left: 0%;
}
.ticket-replies .timeline-badge img {
	border-radius: 50%;
}
.ticket-replies .timeline-panel img {
	height: 100px;
    width: auto;
    border: 2px solid #E5E5E5;
    padding: 0px;
    border-radius: 5px;
}
.ticket-replies .timeline-footer {
	min-height: 20px;
}
.ticket-replies .timeline-footer .datetime {
	position: absolute;
    bottom: 20px;
    right: 20px;
}
#ticket-reply .card-profile {
	text-align: inherit;
}
#ticket-reply .card-profile .card-avatar {
	max-width: 100px;
	max-height: 100px;
}
.btn-fab-add, .btn.btn-fab-add {
	position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 99;
}
.badge-success {
	background-color: #28a745;
}
.badge-info {
	background-color: #17a2b8;
}
.badge-warning {
	color: #212529;
	background-color: #ffc107;
}
.badge-danger {
	background-color: #dc3545;
}
.panel {
	margin-bottom: 10px !important;
	padding: 0px 5px 5px 5px;
	box-shadow: 0px 0px 2px 0px #ccc;
}
.panel .panel-heading {
	padding: 10px 10px 5px 0px;
	border: 0px;
}
.panel .panel-heading a {
	display: block;
	font-weight: bold;
	color: #3f6e90;
}
.panel .panel-collapse {
	border-top: 1px solid #ddd;
}
#invoices-table .badge {
	width: 72px;
	border-radius: 5px;
}
.gmaps {
	height: 36px !important;
    width: 36px !important;
    float: right;
    margin-top: -40px;
}
.fc button {
	margin: 10px 1px;
}
.fc-toolbar h2 {
	margin-top: 8px;
}
.fc-today {
	background-color: #fcf8e3 !important;
	box-shadow: none !important;
}
.fc-today .fc-day-number {
	color: #333 !important;
	font-weight: bold;
}
.fc .tag.label, .popover-content  .tag.label {
	padding: 2px 5px;
}
.popover {
	max-width: 50%;
}
.popover-title {
	font-size: inherit;
	font-weight: bold;
	background-color: #f7f7f7;
	padding: 10px;
	border-bottom: 1px solid #ebebeb;
	border-top-left-radius: calc(.3rem - 1px);
	border-top-right-radius: calc(.3rem - 1px);
}
.popover-content {
	padding: 10px;
	line-height: normal;
}
.bootstrap-datetimepicker-widget a[data-action] {
	color: inherit;
}
.bootstrap-datetimepicker-widget.dropdown-menu {
	opacity: 1;
	visibility: visible;
	transform: none;
}
#faq .btn-icon {
	margin: 0px 0px 0px 5px;
    padding: 3px;
}
#calendar .badge {
	font-size: 10px;
	padding: 3px;
	margin: 5px 2px;
	border-radius: 3px;
}
#calendar .badge .material-icons {
    font-size: 10px;
    vertical-align: middle;
	margin-top: -2px;
}
#calendar .ferie, #calendar .fc-day-weekend, #calendar .fc-day-holiday, #calendar .giorno-assenza {
	font-size: 12px;
	text-align: center;
	vertical-align: middle;
}
#calendar .ferie {
	background: #ffeb83;
}
#calendar .ferie.approvate {
	background: #d1ffd1;
}
#calendar .fc-day-weekend, #calendar .fc-day-holiday {
	background: #ddf7ff;
}
#calendar .giorno-assenza {
	background: #ffe2e2;
}
.fab-container {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1000;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.fab-buttons {
	display: flex;
	flex-direction: column;
	margin-bottom: 15px;
	opacity: 0; 
	visibility: hidden;
	transform: translateY(20px); /* Leggera traslazione per l'animazione */
	transition: opacity 0.3s ease-out, transform 0.3s ease-out, visibility 0.3s ease-out;
}
.fab-container.open .fab-buttons {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.fab-buttons .btn.btn-fab {
	width: 40px;
	height: 40px;
	min-width: 40px;
	font-size: 16px;
	line-height: 40px;
	padding: 0;
	box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.15);
}
.fab-buttons .btn.btn-fab .material-icons {
	font-size: 20px;
	line-height: 1;
}
.fab-buttons .btn {
	margin-bottom: 10px;
}
.fab-buttons .btn-last {
	margin-bottom: 0px;
}

/* COLORS */
a:hover, a:focus {
    color: #3f6e90;
}
.btn.btn-primary, .btn.btn-primary:hover, .btn.btn-primary:focus, .btn.btn-primary:active, .btn.btn-primary.active, .btn.btn-primary:active:focus, .btn.btn-primary:active:hover, .btn.btn-primary.active:focus, .btn.btn-primary.active:hover,
.open>.btn.btn-primary.dropdown-toggle, .open>.btn.btn-primary.dropdown-toggle:focus, .open>.btn.btn-primary.dropdown-toggle:hover,
.navbar .navbar-nav>li>a.btn.btn-primary, .navbar .navbar-nav>li>a.btn.btn-primary:hover, .navbar .navbar-nav>li>a.btn.btn-primary:focus, .navbar .navbar-nav>li>a.btn.btn-primary:active, .navbar .navbar-nav>li>a.btn.btn-primary.active, .navbar .navbar-nav>li>a.btn.btn-primary:active:focus, .navbar .navbar-nav>li>a.btn.btn-primary:active:hover, .navbar .navbar-nav>li>a.btn.btn-primary.active:focus, .navbar .navbar-nav>li>a.btn.btn-primary.active:hover,
.open>.navbar .navbar-nav>li>a.btn.btn-primary.dropdown-toggle, .open>.navbar .navbar-nav>li>a.btn.btn-primary.dropdown-toggle:focus, .open>.navbar .navbar-nav>li>a.btn.btn-primary.dropdown-toggle:hover,
.navbar .dropdown-menu li a:hover, .navbar .dropdown-menu li a:focus, .navbar .dropdown-menu li a:active, .navbar.navbar-default .dropdown-menu li a:hover, .navbar.navbar-default .dropdown-menu li a:focus, .navbar.navbar-default .dropdown-menu li a:active, .bootstrap-table .dropdown-menu li a:hover, .bootstrap-table .dropdown-menu li a:focus, .bootstrap-table .dropdown-menu li a:active, .badge-primary,
.nav-pills>li.active>a, .nav-pills>li.active>a:focus, .nav-pills>li.active>a:hover {
	background-color: #3f6e90;
}
.togglebutton label input[type=checkbox]:checked+.toggle {
	background-color: #4caf50;
}
.togglebutton label input[type=checkbox]:checked+.toggle:after {
	border-color: #4caf50;
}
.btn-group .btn.btn-primary:active, .btn-group .btn.btn-primary.active {
	background: #565656;
	outline: none;
}
.sidebar[data-active-color="purple"] li.active > a {
	background-color: #3f6e90;
}
.card [data-background-color="purple"] {
	background: #3f6e90;
}
.card .header-primary {
	background: #3f6e90;
}
.text-primary, .form-group.is-focused label, .form-group.is-focused label.control-label {
	color: #3f6e90;
}
.form-group.is-focused .form-control {
	background-image: linear-gradient(#3f6e90, #3f6e90), linear-gradient(#D2D2D2, #D2D2D2);
}
.btn-group.bootstrap-select.show-tick.open .select-with-transition {
	background-image: linear-gradient(#3f6e90, #3f6e90), linear-gradient(#D2D2D2, #D2D2D2) !important;
}
#loader, .loader {
	border-top: 16px solid #3f6e90;
}
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	background: #3f6e90;
}
.dropdown-menu li a:hover, .dropdown-menu li a:focus, .dropdown-menu li a:active {
	background-color: #3f6e90;
}
.panel .panel-heading a:hover, .panel .panel-heading a:active, .panel .panel-heading a[aria-expanded="true"] {
	color: #3f6e90;
}
.fc button, .fc button:hover, .fc button:focus, .fc button:active, .fc button.active, .fc button:active:focus, .fc button:active:hover, .fc button.active:focus, .fc button.active:hover, .open>.fc button.dropdown-toggle, .open>.fc button.dropdown-toggle:focus, .open>.fc button.dropdown-toggle:hover, .fc button.btn-primary, .fc button.btn-primary:hover, .fc button.btn-primary:focus, .fc button.btn-primary:active, .fc button.btn-primary.active, .fc button.btn-primary:active:focus, .fc button.btn-primary:active:hover, .fc button.btn-primary.active:focus, .fc button.btn-primary.active:hover, .open>.fc button.btn-primary.dropdown-toggle, .open>.fc button.btn-primary.dropdown-toggle:focus, .open>.fc button.btn-primary.dropdown-toggle:hover {
	background-color: #3f6e90;
}
.fc a {
	color: #3f6e90;
}
.radio input[type=radio]:checked~.circle {
	background-color: #3f6e90;
	border-color: #3f6e90;
}
.checkbox input[type=checkbox]:checked+.checkbox-material .check {
	background: #3f6e90;
}
/* /COLORS */

@media (max-width: 991px) {
	.notifications-list li i{
		margin: -5px 0px 0px -15px !important;
	}
	.card form [class*="col-"] {
		padding: 6px;
	}
	.timeline.ticket-replies {
		padding: 0% 2%;
	}
	.timeline.ticket-replies:before {
		left: 2%;
	}
	.ticket-replies > li > .timeline-badge {
		left: 0%;
	}
}
@media (max-width: 767px) {
	.pagination > li > a, .pagination > li > span {
		padding: 0 5px;
	}
	.fc-toolbar h2 {
		font-size: 1.5em;
	}
	a.fc-more {
		margin: 1px;
	}
	.nav-tabs-title {
		display: contents;
	}
	#bankaccount-filter button, #amount-filter button, #type-filter button {
		padding: 5px 10px !important;
	}
	.dt-buttons button {
		padding: 5px 10px !important;
	}
	.card.magic .card-content {
		padding: 15px 10px;
	}
	.card.magic  .nav {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}
	.card.magic .nav > li {
		display: inline-block;
		float: none;
	}
	.card.magic  .nav > li > a {
		padding: 10px 5px;
	}
	.card.magic  .nav > li .material-icons {
		margin: -1px 2px 0px -2px;
	}
	.popover {
		max-width: 400px;
	}
}

@media print {
	.perfect-scrollbar-on .sidebar, .perfect-scrollbar-on .main-panel {
		height: auto;
		max-height: unset;
	}
}