#sidebar-menu ul li a {
	color: #c2c2c2;
}
#sidebar-menu ul li a svg {
	color: #c2c2c2;
}
.required {
	color: #d75350;
}

.lds-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: #000000c4;
	opacity: 1;
	visibility: visible;
	transition: all 0.4s ease-in-out;
	z-index: 9999;
}
.loaded .lds-container {
	opacity: 0;
	visibility: hidden;
}
.lds-ellipsis {
	display: inline-block;
	position: fixed;
	top: 50%;
	left: 50%;
	width: 80px;
	height: 80px;
	transform: translate(-50%, -50%);
}

.lds-ellipsis div {
	position: absolute;
	top: 33px;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #fff;
	animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

.lds-ellipsis div:nth-child(1) {
	left: 8px;
	animation: lds-ellipsis1 0.6s infinite;
}

.lds-ellipsis div:nth-child(2) {
	left: 8px;
	animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(3) {
	left: 32px;
	animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(4) {
	left: 56px;
	animation: lds-ellipsis3 0.6s infinite;
}

@keyframes lds-ellipsis1 {
	0% {
		transform: scale(0);
	}

	100% {
		transform: scale(1);
	}
}

@keyframes lds-ellipsis3 {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(0);
	}
}

@keyframes lds-ellipsis2 {
	0% {
		transform: translate(0, 0);
	}

	100% {
		transform: translate(24px, 0);
	}
}

[ng-message="server"] {
	font-size: 12px;
	margin-top: 2px;
	color: #fd625e;
}

.btn-block {
	display: block;
	width: 100%;
}

.btn-primary {
	background: var(--primary-color);
	border-color: var(--primary-color);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus-visible {
	background: var(--primary-active-color) !important;
	border-color: var(--primary-active-color) !important;
}

.bg-primary {
	background: var(--primary-color) !important;
}

.mm-active>a,
.mm-active>a svg,
.mm-active .active svg,
.mm-active .active,
#sidebar-menu ul li a:hover,
#sidebar-menu ul li a:hover svg {
	color: var(--primary-color) !important;
}

#google-signin {
	display: flex;
	align-items: center;
	justify-content: center;
}

.text-left {
	text-align: left !important;
}

.text-right {
	text-align: right !important;
}

.text-center {
	text-align: center !important;
}

.text-justify {
	text-align: justify !important;
}

.empty-table {
	text-align: center;
	height: 50px;
}

.simplebar-wrapper {
	background: #1E1C1D;
}

.navbar-brand-box {
	background: #1E1C1D;
	/* border-bottom: 2px solid #fff; */
}

.navbar-brand-box {
	box-shadow: none;
}

.tab-pane .table-responsive .simplebar-wrapper,
.notif .simplebar-wrapper {
	background: #fff;
}

#sidebar-menu ul li ul.sub-menu li a {
	display: inline-block;
	/* color: #62676F !important; */
}

.page-content {
	padding-top: 0;
}
.page-content.notification-content {
	padding-top: calc(70px + 20px);
	padding-bottom: 0;
}
.auth-full-page-content {
	background: #1E1C1D;
}

.auth-logo .logo-txt {
	color: #62676F;
}

.logo-sm img {
  width: 37px;
  height: 24px;
  object-fit: cover;
  object-position: center;
}

.logo-lg img {
  width: 150px;
  height: 36px;
  object-fit: cover;
  object-position: center;
}

.auth-logo img {
  width: 150px;
  height: 36px;
  object-fit: cover;
  object-position: center;
}

.active>.page-link,
.page-link.active {
	background-color: #1E1C1D;
	border-color: #1E1C1D;
}

.pristine-error {
	font-size: 12px;
}

.modal-dialog {
	top: 50%;
	transform: translateY(-50%);
	max-height: calc(100% - 100px);
}

.modal-backdrop {
	background-color: #000000c4;
}

.modal-content {
	border: none;
}

/* Button */
.btn-text-success {
	font-weight: 600;
	border: none !important;
	color: #2ab57d !important;
}

.btn-text-danger {
	font-weight: 600;
	border: none !important;
	color: #d75350 !important;
}

.btn-text-default {
	font-weight: 600;
	border: none !important;
}

.card-package {
	width: 100%;
	background: #FFFFFF;
	/* border: 1px solid #F1F1F1; */
	border-radius: 0px;
}

.card-package .card-header {
	width: 100%;
	height: auto;
	padding: 0;
	border: none;
	position: relative;
}

.card-package .card-header img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.card-package .card-header .discount {
	position: absolute;
	top: 16px;
	font-weight: 400;
	font-size: 14px;
	color: #fff;
	background: #CC1E1E;
	border-radius: 0px 35px 35px 0px;
	padding: 5px 10px;
}

.card-package .card-body {
	padding: 0;
}

.card-package .card-body .content-wrapper {
	padding: 16px;
}

.card-package .card-body .title {
	font-weight: 700;
	font-size: 11px;
	line-height: 140.5%;
	letter-spacing: -0.015em;
	text-transform: uppercase;
	color: #62676F;
	margin: 0;
}

.card-package .card-body .price {
	font-weight: 700;
	font-size: 16px;
	line-height: 140.34%;
	letter-spacing: -0.015em;
	color: #1E1C1D;
	margin: 1px 0;
}

.card-package .card-body .travel {
	font-weight: 500;
	font-size: 10px;
	line-height: 140.5%;
	letter-spacing: -0.015em;
	text-transform: uppercase;
	color: #CC1E1E;
	margin: 0;
	font-weight: 500;
}

.card-package .card-body .calendar {
	background: #F4F6F9;
	border-radius: 4px;
	width: 42px;
	display: flex;
	flex-direction: column;
}

.card-package .card-body .calendar .date {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	font-weight: 700;
	font-size: 14px;
	line-height: 24px;
	letter-spacing: -0.015em;
	color: var(--primary-color);
	padding: 3px;
}

.card-package .card-body .calendar .label {
	width: 100%;
	font-size: 11px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--primary-color);
	color: #fff;
	padding: 3px;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.card-package .card-body .info {
	list-style: none;
	padding: 0;
	margin: 0;
}

.card-package .card-body .info li {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 10px;
	padding: 5px 0;
}

.card-package .card-body .info li:first-child {
	padding-top: 0;
}

.card-package .card-body .info li img {
	width: 22px;
}

.card-package .card-body .info li span {
	font-weight: 500;
	font-size: 13px;
	color: #1E1C1D;
	line-height: 135.34%;
}

.card-package .card-body .info li .quota {
	color: #05B681;
	font-weight: 600;
}

.carousel-indicators [data-bs-target] {
	background-color: red;
}

.piutang-subtitle {
	font-size: 13px;
}

.btn:focus {
	box-shadow: none !important;
}

/* Background */
.bg-red {
	background-color: rgb(170 29 18);
	color: rgb(255, 255, 255);
}

.white {
	color: #fff;
}

.bg-info-light {
	background-color: #81BBFF !important;
}

.bg-success-light {
	background-color: #CDFAE3 !important;
}

.bg-danger-light {
	background-color: #FFEBE2 !important;
}

.bg-warning-light {
	background-color: #F8D556 !important;
}

.card-h-100 {
	max-height: calc(100% - 20px) !important;
}

/* Gap */
.gap--4 {
	gap: 4px
}
.gap--6 {
	gap: 6px
}
.gap--15 {
	gap: 15px
}
.gap--12 {
	gap: 12px
}
.gap--24 {
	gap: 24px
}

/* Padding */
.padding-24 {
	padding: 24px !important;
}

/* Margin */
.mb-10 {
	margin-bottom: 10px;
}

.mb-20 {
	margin-bottom: 20px;
}

.mr-15 {
	margin-right: 15px !important;
}

.sup {
	font-size: 14px;
	top: -1em;
}

.cursor-pointer {
	cursor: pointer;
}

[max-ratio] {
	overflow-x: hidden;
	overflow-y: auto;
}

.form-filter {
	display: flex;
	align-items: center;
	gap: 4px;
}

.form-filter > label {
	margin: 0;
	font-size: 14px;
	font-weight: 400;
	white-space: nowrap;
}

.filedroper {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-bottom: 20px;
	padding: 20px;
	border: 1px dashed #DADADA;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}

.filedroper:hover {
	background-color: #e9e9e9;
	cursor: pointer;
}

.filedroper>.holder {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.filedroper>.action {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	right: 0;
	width: 44px;
	height: 44px;
	font-size: 24px;
	color: #d75350;
	cursor: pointer;
}

.filedroper>input[type="file"] {
	display: none;
}

.filedroper.hover,
.filedroper.active {
	border-color: #211f1f;
}

.filedroper>.image {
	margin-bottom: 10px;
	/* max-width: 240px; */
	height: 200px;
}

.filedroper>.title {
	font-size: 14px;
	font-weight: 500;
	color: #211f1f;
}

.filedroper>.desc {
	font-size: 12px;
	font-weight: 400;
	color: #62676F;
	text-align: center;
	white-space: pre-line;
	line-break: anywhere;
}

.icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	background-color: #DADADA;
	-webkit-border-radius: 12px;
	border-radius: 12px;
}

.icon>i {
	font-size: 40px;
}

.image-preview {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	background-color: #e2e2e2;
}

.image-preview>.add {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.image-preview>.add+input {
	display: none;
}

.image-preview>.delete {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 0;
	right: 0;
	width: 24px;
	height: 24px;
	color: #F31F46;
}

.hotel-item, .branch-item {
	display: flex;
	flex-direction: column;
	position: relative;
	padding: 8px;
	border: 1px solid #DADADA;
	border-radius: 4px;
	-webkit-border-radius: 4px;
}

.hotel-item .header {
	display: flex;
	justify-content: space-between;
}

.hotel-item .name {
	font-size: 12px;
	color: #211f1f;
}

.hotel-item .rate {
	font-size: 8px;
	color: var(--primary-color);
}

.hotel-item .city, .branch-item .city {
	display: flex;
	align-items: center;
	font-size: 10px;
	font-weight: 500;
	height: 21px;
	color: #62676F;
}

.hotel-item .action, .branch-item .action {
	position: absolute;
	right: 8px;
	padding: 0 6px;
	height: 21px;
	color: #CC1E1E;
}

.hotel-item .action {
  bottom: 8px;
}

.branch-item .action {
  top: 8px;
}

.tag-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.tag-wrapper .tag-item {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2px 6px;
	background-color: #DADADA;
	cursor: pointer;
	border-radius: 4px;
	-webkit-border-radius: 4px;
}

.tag-wrapper .tag-item::after {
	margin-left: 10px;
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #FFFFFF;
}

.tag-wrapper .tag-item.selected {
	color: #FFFFFF;
	background-color: #05B681;
}

.tag-wrapper .tag-item.selected::after {
	content: "\f14a";
}

.form-row {
	display: flex;
	align-items: center;
	gap: 16px;
}

.bullet-chart-wrapper {
	display: flex;
	flex-direction: column;
}
.bullet-chart-wrapper > .bullet-chart-item {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 16px 0;
	border-bottom: 1px dashed #EDEDED;
}
.bullet-chart-wrapper > .bullet-chart-item:last-child {
	border-bottom: none;
}
.bullet-chart-wrapper > .bullet-chart-item > .bullet {
	display: flex;
	width: 16px;
	height: 16px;
	background-color: #DADADA;
	-webkit-border-radius: 8px;
	border-radius: 8px;
}
.bullet-chart-wrapper > .bullet-chart-item > .label {
	flex: 1;
	font-size: 16px;
	font-weight: 400;
}
.bullet-chart-wrapper > .bullet-chart-item > .value {
	font-size: 16px;
	font-weight: 700;
}

.border-dashed-bottom > div {
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dashed #DADADA;
}

.border-dashed-bottom > div:first-child {
	padding-top: 0;
}

.border-dashed-bottom > div:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.group-wrapper {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-right: -15px;
	padding-right: 15px;
	overflow-x: hidden;
	overflow-y: auto;
}

.group-wrapper > .group-container {
	display: flex;
	flex-direction: column;
	border: 1px solid #EDEDED;
	overflow: visible;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.group-wrapper > .group-container > .group-header {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 14px;
	background-color: #FAFAFA;
}

.group-wrapper > .group-container > .group-header > .title {
	display: flex;
	align-items: center;
	gap: 12px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.group-wrapper > .group-container > .group-header > .title > span {
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: 700;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.group-wrapper > .group-container > .group-header > .title > span.highlight {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 24px;
	font-size: 10px;
	font-weight: 500;
	text-align: center;
	color: #FFFFFF;
	background-color: #3E97FF;
	-webkit-border-radius: 12px;
	border-radius: 12px;
}

.group-wrapper > .group-container > .group-body {
	display: flex;
	flex-direction: column;
	overflow: visible;
}

.group-wrapper > .group-container > .group-body > .list {
	margin: 0;
}

.group-wrapper > .group-container > .group-body > .list > .item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 0 12px;
	height: 0;
	opacity: 0;
	overflow: hidden;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.group-wrapper > .group-container.open > .group-body > .list > .item {
	opacity: 1;
	height: 40px;
}

.group-wrapper > .group-container > .group-body > .list > .item > .number {
	display: flex;
	justify-content: end;
	width: 24px;
}

.group-wrapper > .group-container > .group-body > .list > .item > .text {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.custom-marker-popup {
	left: -30px !important;
}

.custom-marker-popup .leaflet-popup-content-wrapper {
	color: #FFFFFF;
	background-color: #383838;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

.custom-marker-popup .leaflet-popup-content-wrapper > .leaflet-popup-content {
	margin: 8px 24px 8px 12px;
}

.custom-marker-popup .leaflet-popup-tip-container {
	bottom: -17px;
	left: 12px;
	margin: 0;
	padding: 10px;
	width: auto;
	height: auto;
	transform: scaleX(0.6);
}

.custom-marker-popup .leaflet-popup-tip-container > .leaflet-popup-tip {
	width: 14px;
	height: 14px;
	margin-top: 0;
	background-color: #383838;
}

.custom-marker-popup .popup-title {
	margin-bottom: 4px;
	font-size: 14px;
	font-weight: 600;
}

.custom-marker-popup .popup-subtitle {
	font-size: 12px;
	font-weight: 400;
}
div:has(>table.datatable) {
	overflow-x: auto;
}