
	.mdi:before {
		line-height: 1;
	}
	.patch {
		border-width: 2px;
		border-style: dotted;
		border-radius: 5px;
	}
	.patch-yellow {
		background-color: #ffffd2;
		border-color: #ffff0e;
	}

	.scanner-container {
		height: 100vh;
		width: 100vw;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		background: rgba(0,0,0,1);
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 9999;
		display: none;
	}
	.scanner-container.showing {
		display: flex!important;
	}
	.scanner-container .scanner-element {
		width: 100%;
	}
	.scanner-container .close-element {
		position: absolute;
		top: 42px;
		right: 24px;
		font-size: 24px;
		color: red;
	}
	.media-selector {
		border-width: 2px;
		border-style: dotted;
		border-color: rgba(0,0,0,0.1);
		background-color: rgba(0,0,0,0.05);
		border-radius: 5px;
	}
	.media-selector .d-grid {
		position: relative;
	}
	.media-selector input[type=file], .media-selector .required-helper {
		border: 0 !important;
		clip: rect(0 0 0 0) !important;
		-webkit-clip-path: inset(50%) !important;
		clip-path: inset(50%) !important;
		height: 1px !important;
		overflow: hidden !important;
		padding: 0 !important;
		position: absolute !important;
		width: 1px !important;
		white-space: nowrap !important;
		left: 50%!important;
	}
	.offcanvas-modal {
		max-width: 90vw!important;
	}
	div.dataTables_scrollBody {
		border-width: 0!important;
	}
	table.dataTable thead>tr>th {
		white-space: nowrap;
	}
    .required:after {
        content: "*";
        color: red;
    }
	label:has(+ [required])::after{
		content: '*';
		color: red;
		position: absolute;
	}
	.nav-scroller {
		position: relative;
		z-index: 2;
		/*height: 5rem;*/
		overflow: auto;
	}
	.nav-scroller .dt-buttons {
		display: flex;
		flex-wrap: nowrap;
		padding-bottom: 1rem;
		padding-top: 1rem;
		margin-top: -1px;
		overflow: auto;
		color: rgba(255, 255, 255, .75);
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		text-align: right;
	}
	div.dt-buttons {
		z-index: 1;
		position: relative;
	}
	@media screen and (max-width: 767px){
		.nav-scroller .dt-buttons {
			text-align: center;
		}
	}
	
	.cal {
		position: relative;
		background-color: #fff;
		border-radius: 5px;
		overflow: hidden;
		z-index: 3;
	}
	.cal-title {
		color: #fff;
		line-height: 60px;
		margin-bottom: 0;
		padding: 0 15px;
	}

	.cal-sub-title {
		color: #fff;
		line-height: 60px;
		margin-bottom: 0;
		padding: 0 15px;
	}
	.cal-title-right {
		float: right;
		margin-top: -60px;
		line-height: 62px;
		height: 50px;
		padding-right: 20px;
	}
	.cal-title-left {
		float: left;
		margin-top: -60px;
		line-height: 62px;
		height: 50px;
		padding-left: 20px;
	}
	.cal-days a {
		position: relative;
		width: 14.28%;
		float: left;
		text-align: center;
		height: 35px;
		line-height: 35px;
		color: #fff;
		position: realtive;
		z-index: 3;
		font-weight: 800;
	}
	.cal-disabled {
		color: #ced4da !important;
	}
	.cal-selected span, .cal-current span {
		z-index: 2;
		position: relative;
		color: #fff;
	}
	.cal-selected span {
		color: inherit;
	}
	.cal-selected .cal-selected-icon, .cal-current .cal-current-icon {
		/*color: #000;*/
		z-index: 0;
		opacity: 1;
		font-size: 32px;
		position: absolute;
		width: 32px;
		height: 32px;
		top: 50%;
		left: 50%;
		margin: -16px 0 0 -16px;
		text-align: center;
		line-height: 32px;
	}
	.cal-has-event-icon {
		display: none;
	}
	.has-event .cal-has-event-icon {
		display: inline;
		position: absolute;
		transform: translate(-50%, -50%);
		top: 75%;
		left: 50%;
	}
	.cal-dates a {
		position: relative;
		width: 14.2857142857%;
		float: left;
		text-align: center;
		line-height: 45px;
		color: #1f1f1f;
		font-weight: 500;
	}
	.theme-dark .cal-dates a {
		color: #fff;
	}
	.theme-dark .cal-disabled {
		opacity: 0.3;
	}
	.cal-dates-border a {
		overflow: hidden;
		border-right: solid 1px rgba(0, 0, 0, 0.05);
		border-bottom: solid 1px rgba(0, 0, 0, 0.05);
	}
	.cal-schedule {
		min-height: 80px;
		border-bottom: solid 1px rgba(0, 0, 0, 0.055);
	}
	.cal-schedule em {
		line-height: 20px;
		padding: 20px 0 0 20px;
		position: absolute;
		font-size: 11px;
		font-style: normal;
	}
	.cal-schedule strong {
		color: #000;
		display: block;
		padding: 17px 0 0 100px;
		font-size: 14px;
	}
	.cal-schedule span {
		display: block;
		font-size: 10px;
		color: #adb5bd;
		margin-top: 0;
	}
	.cal-schedule span i {
		width: 50px;
		display: inline-block;
		text-align: center;
		padding: 0 20px 0 102px;
	}
	.theme-dark .cal-schedule strong {
		color: #fff !important;
	}
	.theme-dark .cal-schedule span {
		color: #fff !important;
		opacity: 0.5;
	}
	.cal-message {
		display: block;
	}
	.cal-message i {
		position: absolute;
		height: 40px;
		line-height: 43px;
		font-size: 27px;
		right: 20px;
	}
	.cal-message strong {
		display: block;
		line-height: 20px;
		font-weight: 400;
		font-size: 11px;
		padding-left: 20px;
	}
	/*.cal .day.has-event:after {
		content: '';
		position: absolute;
		top: calc(50% + .6em);
		left: calc(50% - 2px);
		width: 5px;
		height: 5px;
		border-radius: 50%;
		background: #6691CC;
	}*/
	.events {
		/*height: 368px;
		margin-top: -32px;
		padding-top: 48px;*/
		max-height: 368px;
		margin-top: -32px;
		padding-top: 48px;
		overflow: auto;
		position: relative;
		z-index: 2;
	}
	.loading {
		position: relative;
		min-height: 100px;
		/*height: 100%;*/
		/*width: 100%;*/
	}
	.loading:before {
		content: '';
		position: absolute;
		min-height: 100px;
		height: 100%;
		width: 100%;
		z-index: 998;
		background: rgba(255,255,255,0.1);
	}
	.loading:after {
		content: url('https://genesis.roadguard.pro/media/photos/loaderspin.gif');
		position: absolute;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 999;
	}
	@media (max-width: 480px){
		.calendar>.days-grid>.day {
			max-height: 37px!important;
		}
	}
	.theme-dark .bg-light {
		background-color: rgba(255,255,255,0.1);
	}
	a.menu-anchor span {
		color: #1b1b1b!important;
	}
	.tabs .tab-controls a.menu-anchor span {
		color: #fff!important;
	}
	a.menu-anchor.disabled, button.menu-button.disabled {
		display: initial!important;
		pointer-events: none!important;
	}
	a.menu-anchor.disabled span, .menu-anchor.disabled i {
		color: rgba(0,0,0,0.5)!important;
	}
	.tabs .tab-controls a.menu-anchor.disabled, button.menu-button.disabled {
		background-color: rgba(0,0,0,0.5)!important;
	}
	.tabs .tab-controls a.menu-anchor.disabled span, .tabs .tab-controls a.menu-anchor.disabled i, button.menu-button.disabled {
		color: rgba(255,255,255,0.5)!important;
	}
	.template-content {
		border-top-width: 5px;
		border-top-style: solid;
		/*border-bottom-width: 2px;
		border-bottom-style: solid;*/
		border-color: rgba(0,0,0,0.5);
	}
	div.dataTables_processing {
		background-color: #fff;
		z-index: 3;
		border: 0;
		border-radius: 5px;
		box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
	}
	.dataTables_processing div:not(.dt-loader) {
		display: none;
	}
	div.dts div.dataTables_scrollBody {
		min-height: 200px;
	}
	table.dataTable>tbody>tr {
		user-select: none!important;
	}
	.offcanvas {
		height: auto!important;
	}
	.offcanvas .head {
		max-height: 36px!important;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
	.offcanvas .body {
		max-height: calc(80vh - 36px)!important;
		overflow-y: auto;
		overflow-x: hidden;
	}
	.syncing:before {
		-webkit-animation-name: spin;
		animation-name: spin;
		-webkit-animation-duration: 1s;
		animation-duration: 1s;
		-webkit-animation-iteration-count: infinite;
		animation-iteration-count: infinite;
		-webkit-animation-timing-function: linear;
		animation-timing-function: linear;
	}
	@-webkit-keyframes spin {
		0% {
			-webkit-transform:rotate(0deg);
			transform:rotate(0deg);
		}
		to {
			-webkit-transform:rotate(-1turn);
			transform:rotate(-1turn);
		}
	}
	@keyframes spin {
		0% {
			-webkit-transform: rotate(0deg);
			transform: rotate(0deg);
		}
		to {
			-webkit-transform: rotate(-1turn);
			transform: rotate(-1turn);
		}
	}
	
	.form-select2 {
		position: relative;
	}
	.form-select2 label {
		z-index: 1;
	}
	.theme-dark .form-select2 label {
		background-color: #0f1117 !important;
		color: rgba(255, 255, 255, 0.4);
	}
	.form-select2 .select2-container--open .select2-selection.select2-selection--single,
	.form-select2 .select2-container--open .select2-selection.select2-selection--multiple {
		border-bottom-left-radius: 0px!important;
		border-bottom-right-radius: 0px!important;
	}
	.form-select2 .select2-container--above.select2-container--open .select2-selection.select2-selection--single,
	.form-select2 .select2-container--above.select2-container--open .select2-selection.select2-selection--multiple {
		border-bottom-left-radius: 0.375rem!important;
		border-bottom-right-radius: 0.375rem!important;
		border-top-left-radius: 0.375rem!important;
		border-top-right-radius: 0.375rem!important;
	}
	.select2-dropdown.select2-dropdown--above {
		margin-top: -10px;
		border: 1px solid rgba(0, 0, 0, 0.07)!important;
	}
	.offcanvas-inherit {
		overflow: inherit!important;
	}
	.form-select2.form-icon i {
		position: absolute;
		font-size: 16px;
		height: 53px;
		width: 40px;
		line-height: 53px;
		text-align: center;
		z-index: 1;
	}
	.form-custom label {
		z-index: 1!important;
	}
	/*.form-select2 .select2-container--disabled {
		opacity: 0.5!important;
		background-color: #e9ecef!important;
	}
	.theme-dark .form-select2 .select2-container--disabled {
		opacity: 1!important;
		background-color: transparent!important;
	}*/
	.form-select2 select {
		height: 53px;
		border: solid 1px rgba(0, 0, 0, 0.07);
	}
	.theme-dark .form-select2 select {
		border: solid 1px rgba(255, 255, 255, 0.1);
	}
	.form-select2.form-icon select {
		padding-left: 40px;
	}
	.form-select2.form-icon .select2-container--default .select2-selection--single .select2-selection__rendered,
	.form-select2.form-icon .select2-container--default .select2-selection--multiple .select2-selection__rendered {
		padding-left: 40px !important;
		margin-top: auto;
		margin-bottom: auto;
	}
	/*.form-select2 .select2-search.select2-search--inline {
		margin-left: -40px;
	}
	.form-select2.js-tags .select2-search.select2-search--inline {
		margin-left: 0;
	}*/
	.form-select2 .select2-search.select2-search--inline {
		margin-left: 0;
	}
	.theme-dark .select2-container--default .select2-search--inline .select2-search__field {
		color: rgba(255, 255, 255, 0.7)!important;
	}
	.form-select2 .select2-container--default .select2-selection--single,
	.form-select2 .select2-container--default .select2-selection--multiple {
		background-color: #fff!important;
		border: solid 1px rgba(0, 0, 0, 0.05)!important;
		border-radius: 0.375rem!important;
		display: flex;
		align-items: center;
	}
	.form-custom [disabled],
	.form-custom [readonly],
	.form-select2 .select2-container--default.select2-container--disabled .select2-selection--single,
	.form-select2 .select2-container--default.select2-container--disabled .select2-selection--multiple,
	.accordion .form-select2 .select2-container--default.select2-container--disabled .select2-selection--single,
	.accordion .form-select2 .select2-container--default.select2-container--disabled .select2-selection--multiple,
	.accordion [disabled],
	.accordion [readonly],
	.form-select2 select[readonly] + .select2-container .select2-selection--single,
	.form-select2 select[readonly] + .select2-container .select2-selection--multiple
	{
		pointer-events: none!important;
		background-color: #e9ecef!important;
	}
	.theme-dark .form-custom [disabled],
	.theme-dark .form-custom [readonly],
	.theme-dark .form-select2 .select2-container--default.select2-container--disabled .select2-selection--single,
	.theme-dark .form-select2 .select2-container--default.select2-container--disabled .select2-selection--multiple,
	.theme-dark .accordion .form-select2 .select2-container--default.select2-container--disabled .select2-selection--single,
	.theme-dark .accordion .form-select2 .select2-container--default.select2-container--disabled .select2-selection--multiple,
	.theme-dark .accordion [disabled],
	.theme-dark .accordion [readonly],
	.theme-dark .form-select2 select[readonly] + .select2-container .select2-selection--single,
	.theme-dark .form-select2 select[readonly] + .select2-container .select2-selection--multiple
	{
		background-color: transparent!important;
		opacity: 0.5;
	}
	.form-select2 .select2-selection__choice__display {
		color: #747474 !important;
	}
	.form-select2 .select2-container--default .select2-selection--single {
		height: 53px !important;
	}
	.form-select2 .select2-container--default .select2-selection--multiple {
		min-height: 53px !important;
	}
	.theme-dark .form-select2 .select2-container--default .select2-selection--single,
	.theme-dark .form-select2 .select2-container--default .select2-selection--multiple {
		border: solid 1px rgba(255, 255, 255, 0.1)!important;
		background-color: transparent!important;
	}
	.select2-dropdown {
		border-color: rgba(0, 0, 0, 0.07)!important;
	}
	.select2-results {
		font-size: 12px;
	}
	.theme-dark .select2-dropdown {
		border-color: rgba(255, 255, 255, 0.07)!important;
		background-color: #0f1117!important;
		color: rgba(255, 255, 255, 0.8)!important;
	}
	.select2-container--default .select2-search--dropdown .select2-search__field {
		border: solid 1px rgba(0, 0, 0, 0.07)!important;
		border-radius: 5px!important;
	}
	.theme-dark .select2-container--default .select2-search--dropdown .select2-search__field {
		background-color: rgba(255,255,255,0.1);
		color: rgba(255,255,255,0.8);
	}
	.select2-container--default .select2-selection--single .select2-selection__rendered,
	.select2-container--default .select2-selection--multiple .select2-selection__rendered {
		font-weight: 400!important;
		font-size: 12px!important;
		padding-right: 40px;
		padding-left: 15px;
	}
	.theme-dark .select2-container--default .select2-selection--single .select2-selection__rendered,
	.theme-dark .select2-container--default .select2-selection--multiple .select2-selection__rendered{
		color: rgba(255, 255, 255, 0.8)!important;
	}
	.form-select2 .select2-container--default .select2-selection--single .select2-selection__arrow,
	.form-select2 .select2-container--default .select2-selection--multiple .select2-selection__arrow{
		top: auto;
		bottom: auto;
		position: absolute;
		font-size: 16px;
		height: 53px;
		width: 40px;
		line-height: 53px;
		text-align: center;
		z-index: 1;
	}
	.was-validated .form-select2 .form-control:invalid + .select2-container--default .select2-selection--single,
	.was-validated .form-select2 .form-control:invalid + .select2-container--default .select2-selection--multiple,
	.was-validated .form-select2 .form-control.is-invalid + .select2-container--default .select2-selection--single,
	.was-validated .form-select2 .form-control.is-invalid + .select2-container--default .select2-selection--multiple,
	.was-validated .form-select2 .form-select:invalid + .select2-container--default .select2-selection--single,
	.was-validated .form-select2 .form-select:invalid + .select2-container--default .select2-selection--multiple,
	.was-validated .form-select2 .form-select.is-invalid + .select2-container--default .select2-selection--single,
	.was-validated .form-select2 .form-select.is-invalid + .select2-container--default .select2-selection--multiple
	{
		border-color: rgba(213, 25, 77, 0.3) !important;
	}
	.theme-dark .select2-container--default .select2-results__option--selected {
		background-color: rgba(255,255,255,0.1);
	}
	.select2-dropdown {
		z-index: 1060;
	}
	.select2-hidden-accessible {
		top: 100%;
		left: 50%;
	}
	.border-2 {
		border-width: 2px!important;
	}
	.btn.applyBtn, .btn.cancelBtn, .btn.clearBtn {
		font-size: 11px!important;
		padding: 8px 13px!important;
	}
	.btn:not(.btn-xxs):not(.btn-xs):not(.btn-s):not(.btn-m):not(.btn-l):not(.btn-xl):not(.applyBtn):not(.cancelBtn):not(.clearBtn) {
		min-height: 53px!important;
		padding: 16px 20px!important;
	}
	@media only screen and (max-width: 600px) {
		/*.offcanvas-fitmobile {
			z-index: 1039!important;
		}*/
		.offcanvas-fitmobile.show {
			max-width: 100vw!important;
			width: 100vw!important;
			top: calc((env(safe-area-inset-top)))!important;
			left: 0!important;
			right: 0!important;
			bottom: calc((env(safe-area-inset-bottom)))!important;
			border-radius: 0!important;
			transform: none!important;
		}
		.offcanvas-fitmobile .body {
			max-height: calc(100vh - calc(100px + env(safe-area-inset-top) + env(safe-area-inset-bottom)))!important;
		}
		.offcanvas-fitmobile .content {
			height: calc(100vh - 40px);
		}
		.select2-container--open .select2-dropdown--below, .select2-container--open .select2-dropdown--above{
			position: fixed !important;
			top: 50%!important;
			left: 50%!important;
			transform: translate(-50%,-50%);
			width: 90vw!important;
			height: auto!important;
			max-height: calc(100vh - 140px) !important;
		}
		.select2-results{
			visibility: hidden;
		}
		.select2-container .select2-dropdown .select2-results .select2-results__options{
			font-size: 18px!important;
			max-height: calc(100vh - 220px);
		}
		.select2-dropdown {
			border-radius: 10px!important;
		}
		.select2-results__option {
			padding: 12px!important;
			border-bottom: 1px solid rgba(0,0,0,0.05)!important;
		}
		.select2-results__option:last-child {
			border-bottom: none!important;
			border-bottom-left-radius: 10px;
			border-bottom-right-radius: 10px;
		}
		.select2-search.select2-search--dropdown {
			border-bottom: 1px solid rgba(0,0,0,0.05)!important;
			padding: 12px!important;
		}
		.select2-search__field {
			padding: 8px!important;
			font-size: 16px!important;
		}
	}
	
	.theme-dark .swal2-container .swal2-popup {
		background: rgba(19, 30, 43, 1)!important;
		color: #f6f6f6!important;
	}
	.theme-dark div.dts div.dataTables_scrollBody {
		background: #0f1117!important;
	}
	.theme-dark .table>:not(caption)>*>* {
		background-color: #0f1117!important;
		color: #fff!important;
	}
	.theme-dark .table {
		border-color: rgba(255,255,255,0.2)!important;
	}
	
	.offcanvas {
		height: auto;
	}
	.offcanvas-content {
		position: relative;
		max-height: 80vh;
	}
	
	#filters-accordion {
		overflow: visible!important;
	}
	#filters-accordion > .accordion-item > .accordion-collapse.collapsing {
		overflow: hidden;
	}
	
	.text-right {
		text-align: right;
	}
	
	.text-left {
		text-align: left;
	}
	
	#loader {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: transparent; /* Set background color to transparent */
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: 9999;
	}

	#loader img {
		width: 50px; /* Adjust the size of the spinner */
		height: 50px; /* Adjust the size of the spinner */
	}
	
	
