html, body, #app {
	width: 100%;
	height: 100%;
}

.antialiased {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#sidebar-close {
	background: rgba(0, 0, 0, 0.2);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1030;
}

.subpixel-antialiased {
	-webkit-font-smoothing: auto;
	-moz-osx-font-smoothing: auto;
}

select.form-control {
	height: 43px;
}

hr.horizontal {
	background-image: linear-gradient(90deg, transparent, rgba(0, 0, 0, .4), transparent);
	background-color: transparent;
	border-top: none !important;
	height: 1px;
}

.navbar-vertical.navbar-expand-xs .navbar-collapse {
	height: calc(100vh - 400px);
}

.bg-gradient-primary {
	background-image: linear-gradient(310deg, #c70c61 0%, #d75790 100%);
}

.bg-3 {
	background-image: url("/assets/img/img-2.jpg");
	background-size: cover;
	background-color: #0000008a;
	background-blend-mode: color;
}

.avatar {
	color: #ccc;
}

.loader-center {
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
}

.loader {
	width: 56px;
	height: 56px;
	border: 3px solid #ff0082;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	animation: rotation 1s linear infinite;
}
.loader::after {
	content: "";
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 3px solid transparent;
	border-bottom-color: #c60b60;
}

@keyframes rotation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

textarea {
	min-height: 42px !important;
}

.sidenav {
	z-index: 1040;
}
.sidenav .navbar-brand {
	padding: 1.5rem 1.5rem;
}
.navbar-vertical .navbar-brand>img, .navbar-vertical .navbar-brand-img {
	max-height: 4rem;
}
.navbar-vertical.bg-white .navbar-nav>.nav-item>.nav-link.active {
	background: #071844;
}

.timeline-one-side .timeline-content {
	max-width: none !important;
}
.timeline.short .timeline-content {
	padding-top: 4px;
}
.timeline.short::before {
	height: calc(100% - 50px);
}

.attachment-card img {
	height: 200px;
	object-fit: cover;
}
.attachment-card {
	overflow: hidden;
}
.model-viewer {
	overflow: hidden;
	cursor: pointer;
}
.model-viewer img {
	transition: all .2s ease-in-out;
	-webkit-filter: blur(0);
	filter: blur(0);
	width: 100%;
	object-fit: cover;
}
.model-viewer center {
	position: absolute;
	width: 100%;
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
	transition: all .2s ease-in-out;
	opacity: 0;
	color: white;
}
.model-viewer:hover img {
	transform: scale(1.2);
	-webkit-filter: blur(10px);
	filter: blur(10px);
}
.model-viewer:hover center {
	transition: all .2s ease-in-out;
	opacity: 1;
}

.price-badge {
	position: absolute;
	top: 5px;
	left: 5px;
	padding: 2px 11px;
}
.promo-badge {
	position: absolute;
	top: 5px;
	right: 5px;
}
.promo-badge-2 {
	position: absolute;
	top: 8px;
	left: 8px;
}
@media (min-width: 576px) {
	.h-sm-100 {
		height: 100% !important;
	}
}

.multisteps-btn {
	padding: 0;
	margin: 0 8px 0 0;
	width: 30px;
	height: 30px;
}

.whatsapp {
	position: fixed;
	width: 60px;
	height: 60px;
	bottom: 22px;
	right: 25px;
	background-color: #25d366;
	color: #FFF;
	border-radius: 50px;
	text-align: center;
	font-size: 30px;
	box-shadow: 2px 2px 3px #999;
	z-index: 1000;
}
.whatsapp:hover {
	color: #FFF;
	background-color: #1fbd59;
}

.modal-footer .btn {
	margin-bottom: 0.25rem;
}

.sv-control {
	height: 43px;
	box-shadow: 0 1px 2px 0 rgba(12, 26, 36, 0.06);
	padding: 0.1rem 0.3rem;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1rem;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	--sv-border: 1px solid #dde0e5;
	border: 1px solid #dde0e5;
	border-left-width: 1px;
	border-left-width: 1px;
	appearance: none;
	border-radius: 0.375rem !important;
	transition: box-shadow 0.15s ease, border-color 0.2s cubic-bezier(0.655, 0.055, 0.345, 1);
}

.no-indicator .indicator {
	visibility: hidden;
}

.nowrap {
	white-space: nowrap !important;
}
.break {
	flex-basis: 100%;
	height: 0;
}

.text-base {
	font-size: 1rem;
}

.spinner-border-sm {
	--bs-spinner-width: 0.99rem;
	--bs-spinner-height: 0.99rem;
	--bs-spinner-border-width: 0.2em;
}

.uppercase {
	text-transform: uppercase;
}
.uppercase::placeholder {
	text-transform: none;
}

.dz-complete .dz-size {
	display: none !important;
}
.dz-complete .dz-filename {
	white-space: unset !important;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	-webkit-box-orient: vertical;
	height: 78px;
	overflow: hidden;
}
.dz-progress {
	display: none !important;
}

.pdf-border {
	border: 1px solid black;
	border-radius: 12px;
	padding: 10px;
}

#element-to-print {
	color: #1e293b !important;
	font-size: 0.875rem !important;
}

.table tr:last-child td {
	border-bottom: none;
}

.fc-daygrid-event.bg-warning {
	background-color: #f1993750 !important;
}
.bg-warning .fc-daygrid-event-dot {
	--fc-event-border-color: #f19937;
}
.fc-daygrid-event.bg-info {
	background-color: #55a6f850 !important;
}
.bg-info .fc-daygrid-event-dot {
	--fc-event-border-color: #55a6f8;
}
.fc-daygrid-event.bg-success {
	background-color: #67c23a50 !important;
}
.bg-success .fc-daygrid-event-dot {
	--fc-event-border-color: #67c23a;
}
.fc-daygrid-event.bg-dark {
	background-color: #1e293b50 !important;
}
.bg-dark .fc-daygrid-event-dot {
	--fc-event-border-color: #1e293b;
}

.fc-daygrid-event {
	max-height: 120px;
}
@media (max-width: 767px) {
	.fc-daygrid-event-dot {
		display: none !important;
	}
	.fc-event-time {
		display: none !important;
	}
}
@media (min-width: 768px) {
	.fc-event-title {
		white-space: break-spaces;
	}
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type=number] {
	-moz-appearance: textfield;
}

.asterisk {
	color: #d51e0b;
}

#sidenav-main {
	margin: 25px;
	border-radius: 0.375rem;
}
.navbar-vertical .navbar-brand>img, .navbar-vertical .navbar-brand-img {
	max-height: 3rem;
	margin: 0 auto;
}

.modal-map-fix {
	visibility: hidden;
	display: block !important;
	opacity: 1 !important;
	transition: opacity 0.15s linear, visibility 0.15s linear;
}

.modal-map-fix.show {
	visibility: visible;
	display: block !important;
	opacity: 1 !important;
}


.leaflet-popup-content-wrapper {
	border: 1px solid #dde0e5 !important;
	box-shadow: 0 0.75rem 1.0625rem -0.3125rem rgba(12, 26, 36, 0.09), 0 0.25rem 0.4375rem -0.1875px rgba(12, 26, 36, 0.04) !important;
}
.leaflet-popup-content {
	min-width: 120px;
	margin: 10px 30px 13px 15px;
}
.leaflet-popup-content h6 {
	line-height: 1.2;
}

.fake-a {
	color: #1e293b;
	cursor: pointer;
}
.fake-a:hover {
	color: var(--bs-link-hover-color);
	text-decoration: none;
}
.fake-a:hover i {
	color: unset;
}
div .comma {
	margin-left: 1px;
	margin-right: 5px;
}
div .comma:last-of-type {
	display: none;
}

.btn:has(.btn-check:checked) {
	font-weight: 700;
	color: #774dd3;
	border: 1px solid #dde0e5;
}

td[contenteditable="true"]:empty {
	line-height: 57px;
	box-sizing: border-box;
	text-align: left;
}

.info {
	flex: 1;
	overflow: hidden;
}
.info[contentEditable="true"]:empty:not(:focus):before {
	content: "N/D";
}

.timeline-content .comma {
	margin-left: -2px;
}

.btn.btn-xs {
	width: 1.2rem;
	height: 1.2rem;
	padding: 0;
}
.btn.btn-xs i {
	font-size: 0.5rem;
}

.btn-tooltip {
	position: relative;
}
.btn-tooltip:active:after {
	position: absolute;
	content: attr(title);
	background: #000;
	font-size: 0.7rem;
	line-height: 0.7rem;
	inset: auto auto 0px 0px;
	padding: 0.4rem;
	font-weight: 400;
	text-align: left;
	width: 200px;
	color: white;
	border-radius: 0.375rem;
	left: 24px;
	bottom: -9px;
}

.table-condensed tbody td {
	padding: 0.39rem 0.2rem;
}
.table-condensed tbody td button.px-3 {
	padding: 0.5rem 0.8rem !important;
}
.table-condensed tbody td button.px-2 {
	padding: 0.5rem 0.5rem !important;
}

@media (max-width: 767px) {
	.table-condensed {
		white-space: nowrap;
		margin: 0;
		border: none;
		border-collapse: separate;
		border-spacing: 0;
	}
	.table-condensed thead th {
		position: sticky;
		top: 0;
		z-index: 1;
		width: 30vw;
		background-color: #f9fafb;
	}
	.table-condensed thead th:first-child {
		position: sticky;
		left: 0;
		z-index: 2;
		box-shadow: 4px 0px 6px #0000000f;
	}
	.table-condensed tbody th {
		position: sticky;
		left: 0;
		z-index: 1;
		white-space: wrap;
		box-shadow: 4px 0px 6px #0000000f;
		background-color: #fff;
	}
	.table-condensed td, .table-condensed th {
		border-color: #dde0e5;
	}
}
.w-33 {
	width: 33% !important;
}
.flex-break {
	flex-basis: 100%;
	height: 0;
}
@media (min-width: 576px) {
	.flex-break {
		display: none;
	}
}

@media (max-width: 575px) {
	.btn-group.flex-wrap label {
		margin: -1px !important;
		border-radius: 0px !important;
	}
}

.accordion-item {
	color: var(--bs-body-color);
}
.accordion {
	--bs-accordion-color: var(--bs-body-color);
}