@import url("https://fonts.googleapis.com/css2?family=Gloock&family=Quicksand:wght@300..700&display=swap");
* {
	font-family: "Quicksand", sans-serif;
	-webkit-text-size-adjust: 100%;
}
body {
	-webkit-text-size-adjust: 100%;
}
html {
	scrollbar-width: none;
	touch-action: manipulation;
}
.placeholder-wave {
	animation: placeholder-wave 8s linear infinite !important;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="number"] {
	-moz-appearance: textfield; /* Firefox */
}
.standard-theme h1,
.standard-theme h2,
.standard-theme h3,
.standard-theme h4,
.standard-theme h5 {
	font-family: "Gloock", serif;
}

.standard-theme .fineprint {
	font-size: 0.6rem;
}
.standard-theme .main-app-container {
	min-height: 85px;
	padding-bottom: 55px;
	z-index: 2;
}

.standard-theme img.hero-image {
	object-fit: cover;
	width: 100%;
	top: -35%;
}
.standard-theme img.hero-image.placeholder {
	opacity: 0.8;
}
.hero-image-holder .section-title {
	z-index: 9;
}

.standard-theme .hero-image-holder:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, #000000, transparent);
	z-index: 0;
}

.standard-theme.booking-app-home,
.standard-theme.contact-page,
.standard-theme.portal {
	background-color: #dadada;
}

.standard-theme .navbar {
	background: #ffffffb0;
	backdrop-filter: blur(20px);
	z-index: 12;
}
.standard-theme #navbarOffline:empty,
.standard-theme #navbarGeneral:empty {
	padding: 0;
}

.standard-theme .nav-item .nav-link {
	padding: 8px 16px;
}

.standard-theme .navbar-brand {
	font-size: 1rem;
	padding-right: 10px;
	border-right: 1px solid #dadada;
	margin-right: 10px;
}

.standard-theme .brand-name,
.standard-theme .brand-name a {
	font-size: 1.1rem;
	margin: 0;
	color: #333;
	text-decoration: none;
}

.standard-theme .brand-slogan {
	display: block;
	font-size: 0.6rem;
	color: #444;
}

.standard-theme .brand-logo {
	object-fit: contain;
	width: 100%;
	max-height: 30px;
	max-width: 50px;
}
.standard-theme .addon-name {
	font-size: 14px;
	text-wrap-style: balance;
}
.standard-theme #ticket-cart {
	font-size: 14px;
	text-wrap: wrap;
	text-wrap-style: balance;
}
.standard-theme #ticket-cart .text-end {
	text-wrap: nowrap !important;
}

.app-container {
	background-color: #f1f1f1;
	transform: translateY(-65px);
}

.ticket-type {
	max-width: 100%;
	display: inline-block !important;
	background-color: #dadada;
	min-height: 10rem;
	overflow: hidden;
	max-height: 320px;
}

.ticket-type hr {
	margin: 0.35rem;
}
.variation-items-container {
	scroll-margin-top: 90px;
}
.ticket-helpers {
	text-shadow: 1px 1px 2px #000000a1;
	color: white;
	font-size: 0.8rem;
}

.ticket-event-image {
	object-fit: cover;
	height: 100%;
	z-index: 0;
	/*filter: grayscale(0.8);*/
	transition: 0.3s all ease;
}

.ticket-body {
	color: white;
	z-index: 1;
	margin-top: 20px;
	background: linear-gradient(0deg, black, transparent);
}
.modal-ticket-cart {
	font-size: 0.8rem;
	text-wrap-style: balance;
}

.ticket-input-box,
.variation-input-box {
	width: 2.5rem;
	border: none;
	font-size: 2rem;
	text-align: center;
	padding: 0;
	background: transparent;
	color: white;
	text-shadow: 1px 1px black;
}

.ticket-input-box::placeholder,
.variation-input-box::placeholder {
	color: white;
}
.booking-app-home .variation-item {
	transition: 0.3s all ease;
}
.variation-item:hover {
	background: #a0a0a021;
}
.ticket-input-box:focus,
.variation-input-box:focus,
.ticket-input-box::placeholder:focus,
.variation-input-box::placeholder:focus {
	color: #333333;
}

.ticket-title {
	font-size: 1.2rem;
	text-align: left;
	overflow: hidden;
	text-overflow: ellipsis;
	text-shadow: 1px 1px #000000;
	text-wrap-style: balance;
}

.ticket-description {
	max-height: 3.3rem;
	overflow: hidden;
	font-size: 0.8rem;
}

.ticket-input-button {
	width: 3rem;
	height: 3rem;
	border-radius: 100%;
	font-size: 1.5rem;
	line-height: 2rem;
	padding: 0;
}

.standard-theme .card-header {
	border: none; /* border-bottom: 1px solid #dadada; */
	background: transparent;
	text-align: left;
	font-size: 0.6rem;
	font-weight: bold;
	text-transform: uppercase;
	color: #a2a2a2;
}
#mobileComponent label.ms-5 {
	margin-left: 35px !important;
}
.modal label {
	z-index: 6;
}
@media (min-width: 576px) {
	.standard-theme .modal-sm {
		--bs-modal-width: 330px;
	}
	.standard-theme.portal-dashboard .ticket-type {
		max-width: calc(50% - 1rem) !important;
		min-width: calc(50% - 1rem) !important;
	}
}
@media all and (max-width: 800px) {
	.standard-theme.portal-dashboard .ticket-type {
		max-width: calc(33% - 1rem) !important;
		min-width: calc(33% - 1rem) !important;
	}
	.ticket-title {
		font-size: 1rem;
	}
	.v-modal-image {
		max-height: 45vh;
		height: 45vh;
	}
	.fixed-xs-bottom {
		position: fixed;
		bottom: 0;
		box-shadow: 30px -7px 20px 0 #1a498724 !important;
		left: 0;
	}
	.standard-theme .main-app-container {
		min-height: 85px;
		padding-bottom: 15px;
		z-index: 2;
	}
	#variationsContainer {
		max-height: inherit !important;
		transition: 0.3s all ease;
	}
	#variationsContainer .v-button-container {
		position: fixed;
		bottom: 0;
		width: 100%;
		left: 0;
		box-shadow: 30px -7px 20px 0 #1a498724 !important;
		z-index: 1022;
	}
	#variationsContainer .schedule-item.slots-available-0,
	#variationsContainer .schedule-item.slots-available-0 .fineprint {
		cursor: not-allowed;
		font-size: 0.4rem;
		max-width: 130px;
	}
	#select-event-variation .v-close-button {
		right: calc(50% - 15px) !important;
	}
	.footer.fixed-bottom {
		position: relative;
	}
	.standard-theme #toaster {
		top: 0;
		bottom: unset !important;
	}
	.toast-hidden {
		opacity: 0;
		pointer-events: none;
		transform: translateY(-100px) !important;
	}
	.standard-theme .filter-section {
		top: 71px !important;
	}

	.standard-theme .col-md-8 .ticket-type {
		max-width: 100% !important;
	}

	.app-container {
		transform: translateY(-1rem) !important;
	}

	.standard-theme img.hero-image {
		top: 0;
		left: 0;
		max-width: unset;
		height: 100%;
		height: calc(100% + 56px);
	}
}

.standard-theme .footer-link {
	text-decoration: none;
	color: #dadada;
}
.footer {
	background: #0000008c !important;
	backdrop-filter: blur(4px);
	color: #f1f1f1;
}
.footer a {
	text-decoration: none;
	color: inherit;
}

.standard-theme .add-on {
	background-color: #e7e7e7;
	color: #666;
}
table {
	max-height: 500px;
}
table tfoot {
	display: table-row-group;
}

.date-control-container {
	gap: 3px; /*	box-shadow:1px 2px 20px 10px #ffffff5c;*/
	max-width: 100%;
	overflow-x: auto;
	overflow-anchor: visible;
	overflow-y: hidden;
	max-height: 90px;
	padding: 0.5rem 1rem 0.25rem 0.5rem;
	touch-action: pan-x;
	scroll-behavior: smooth;
	scrollbar-width: none; /*    background: #ffffff3b;*/
	border-radius: 10px;
	backdrop-filter: blur(2px);
}

.cal-date-container.weekend {
	border-bottom: 3px solid #ff7000;
	box-sizing: inherit;
}

.cal-date-container.today {
	background: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
	color: white;
}

.cal-date-container.today .cal-date {
	color: white;
}

.cal-date-container {
	border-bottom: 3px solid #f2f2f2;
	touch-action: pan-x;
	scroll-behavior: smooth;
	border-radius: 4px;
	background: #ffffffa3;
	color: black;
	text-align: center;
	padding: 5px 1rem;
	min-height: 75px;
	user-select: none;
	cursor: pointer;
	transition: 0.3s all ease;
	scale: 0.86;
}

.cal-date-container:hover,
.cal-date-container:focus {
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 3px 5px 2px #8585855c;
	transform: translateY(-6px);
}

.cal-date-container.active {
	background: rgba(255, 255, 255, 0.8);
	scale: 1;
}

.cal-date-container.active:hover,
.cal-date-container.active:focus {
	transform: none;
}

.cal-date-container .badge {
	box-shadow: none;
	background: #ffffff54;
	padding: 5px;
	font-size: 15px;

	animation-name: pop;
	animation-duration: 0.3s;
	top: 11px !important;
}

.cal-date-container .badge i {
	display: none;
}

.cal-date-container.active .badge {
	padding: 0;
	color: green;
	background: white;
	display: block;
}

.cal-date-container.active .badge i {
	display: block !important;
}

.cal-date-container.today.active .badge {
	padding: 0;
	color: white;
	background: green;
}

@keyframes pop {
	0% {
		font-size: 1px;
	}

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

/*

.cal-date-container.active {
z-index: 2;
box-shadow: 0 0px 8px 7px #8585855c;
background: white
}*/
.cal-date-container.disabled {
	user-select: none;
	background: #999;
	cursor: not-allowed;
	color: #777;
}

.cal-date-container .cal-date {
	color: #333;
	font-size: 1rem;
	font-weight: bold;
	line-height: 1rem;
}

.cal-date-container .cal-month {
	font-size: 0.8rem;
	text-transform: uppercase;
	line-height: 0.8rem;
}

.cal-date-container hr {
	border: 1px solid #999999;
	margin: 0;
	padding: 0;
}

.cal-date-container .cal-day {
	font-size: 0.6rem;
}

#left-button {
	width: 25px;
	min-width: 25px;
	height: 25px;
	/*position: absolute;*/
	background: white;
	box-shadow: 0 0 10px #999;
	border-radius: 50px;
	top: 35px;
	left: -10px;
	z-index: 1040 !important;
	text-align: center;
	user-select: none;
	color: #999;
	cursor: pointer;
}

#right-button {
	width: 25px;
	min-width: 25px;
	height: 25px;
	/*position: absolute;*/
	background: white;
	box-shadow: 0 0 10px #999;
	border-radius: 50px;
	top: 35px;
	right: -10px;
	z-index: 1040;
	text-align: center;
	user-select: none;
	color: #999;
	cursor: pointer;
}
.ticket-input-button i {
	background: white;
	border-radius: 100%;
}
.add-ons-holder .form-control::placeholder,
#variationsContainer .form-control::placeholder {
	color: #999999;
}

.add-ons-holder .form-control,
#variationsContainer .form-control {
	width: 2.5rem;
	border: none;
	font-size: 2rem;
	text-align: center;
	text-shadow: none;
	padding: 0;
	background: transparent;
	color: #333333;
}

.standard-theme .input-group > .btn{
	border-radius: 0 0.8rem 0.8rem 0 !important;
}
.portal-gatekeeper .input-group > .btn{ border-radius: 0;}
.portal-gatekeeper .input-group > .btn:last-child {
	border-radius: 0 0.8rem 0.8rem 0 !important;
}
.addon-item-repeater:empty {
	padding: 0;
}

.addon-item-repeater .addon-item {
	border-bottom: 1px solid #dadada;
	padding: 0.5rem 0.25rem;
}

.addon-item-repeater .addon-item:last-child {
	border-bottom: none;
}
.card-body.variation-item-repeater .variation-item:not(.card-body.variation-item-repeater .variation-item:last-child) {
	border-bottom: 1px solid #dadada;
}

.cart-card {
	background: linear-gradient(133deg, #16503b, #0c271d);
	transition: 0.3s all ease;
}

#ticket-cart > td {
	background: transparent;
	color: #333;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

#spinner {
	position: fixed;
	top: 0;
	z-index: 9999;
	width: 100%;
	height: 100%;
	background: #00000091;
	backdrop-filter: blur(6px);
}

#pax-details-container .card,
.card {
	border: none;
	box-shadow: 2px 4px 12px #00000014;
	background: #ffffff;
	border-radius: 18px;
}
.standard-theme .rounded-corners {
	border-radius: 18px !important;
}
.standard-theme #select-event-variation .modal-content {
	border-radius: 18px;
	overflow: hidden;
}

#paymentModal .modal-content {
	background: #f1f1f1;
}

.portal-report .container:not(.navbar > .container) {
	max-width: 95%;
}

.standard-theme.portal-dashboard .ticket-type:hover .ticket-contents h1 {
	scale: 1.5;
	transition: 0.5s all ease;
}
.booking-app-home.standard-theme .ticket-type {
	transition: all 0.3s cubic-bezier(0, 0, 0.5, 1);
}
.booking-app-home.standard-theme.internal-booking-portal .ticket-type:hover * {
	scale: 1;
	animation: none;
}
.booking-app-home.standard-theme .ticket-type:hover {
	transform: scale3d(1.01, 1.01, 1.01);
	box-shadow: 2px 4px 16px #00000029;
}
.standard-theme.portal-dashboard .ticket-type {
	max-width: 20%;
	min-width: 12rem;
	max-width: calc(25% - 1rem) !important;
	min-width: calc(25% - 1rem) !important;
	user-select: none;
	text-wrap-style: balance;
	text-align: center;
	padding: 0 10px;
}

.standard-theme.portal-dashboard .ticket-contents:after {
	background: #ff0049c2;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
}

.standard-theme.portal-dashboard .ticket-type:nth-child(1) .ticket-contents::after {
	background: #ff0049c2 !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(2) .ticket-contents::after {
	background: #0d6efdd4 !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(3) .ticket-contents::after {
	background: #f0780dcf !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(4) .ticket-contents::after {
	background: #0d33f0cf !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(5) .ticket-contents::after {
	background: #b30df0cf !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(6) .ticket-contents::after {
	background: #198754d6 !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(7) .ticket-contents::after {
	background: #212529 !important;
}
.standard-theme.portal-dashboard .ticket-type:nth-child(8) .ticket-contents::after {
	background: #0dd3aad9 !important;
}

.standard-theme.portal-dashboard .ticket-contents h1,
.standard-theme.portal-dashboard .ticket-contents small {
	color: white;
	z-index: 2;
}
#network-status {
	z-index: 9999;
}
.standard-theme #paymentModal #payment .btn,
#validateNumber,
#editNumberPortal,
#apply-discount {
	min-width: 90px;
	max-width: 90px;
}

.standard-theme #paymentModal #payment .input-group .iti.iti--allow-dropdown {
	flex-grow: 1;
}
.iti__search-input {
	padding: 6px;
	border: 1px solid #dadada;
}
.iti label.ms-5 {
	margin-left: 35px !important;
}
.standard-theme #toaster {
	box-shadow: 0 7px 8px #00000026;
	left: 0;
	z-index: 9999 !important;
	bottom: 0;
	width: 100%;
	border-radius: 0;
	margin: 0;
}
#cf-turnstile iframe,
#cf-turnstile div,
#cf-turnstile div > iframe {
	width: 100% !important;
}
.standard-theme #toaster .alert-error,
.standard-theme .alert-danger {
	background: #f70050e3;
	box-shadow: 0 0 50px 11px #59001d93 !important;
	color: white;
	border: none;
}
.standard-theme #toaster .alert-info,
.standard-theme .alert-info {
	background: #475ced;
	color: white;
	box-shadow: 0 0 50px 11px rgba(36, 46, 117, 0.5) !important;
	border: none;
}
.standard-theme #toaster .alert-success,
.standard-theme .alert-success {
	background: rgb(0 185 68);
	color: white;
	border: none;
	box-shadow: 0 0 50px 11px #037d278a !important;
}
.standard-theme #toaster.alert-warning {
	background: #ffc300;
	border: none;
	box-shadow: 0 0 50px 11px #9e79038a !important;
}
#toaster {
	transition:
		transform 0.7s ease,
		opacity 0.4s ease;
}
.toast-hidden {
	opacity: 0;
	pointer-events: none;
	transform: translateY(100px);
}
#offcanvasBanner {
	min-height: 80vh;
}
.select-event-variation {
	white-space: nowrap !important;
}
#offcanvasBanner iframe {
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%;
	height: 100%;
}
/* Slide up for mobile */
.toast-slide-up {
	transform: translateY(-150%);
	opacity: 0;
}

/* Slide down for desktop */
.toast-slide-down {
	transform: translateY(150%);
	opacity: 0;
}

.standard-theme .icon-circle {
	border: 1px solid #e8e8e8;
	background: #f8f8f8;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	color: #666;
	align-items: center !important;
	display: flex;
	justify-content: center !important;
}

/*Find ticket Page*/
.find-ticket {
	background: url("https://cdn.pixabay.com/photo/2022/10/21/21/11/art-7537962_1280.jpg");
	min-height: 100vh;
	height: 100dvh;
	background-size: cover;
}

/*            .offline-portal .input-group{max-width: 375px}*/
.find-ticket #ticketOutput:empty {
	display: none;
}
.find-ticket .sidebar .brand-logo {
	max-width: 100px;
	max-height: 100px;
}
.find-ticket .card {
	background: linear-gradient(0deg, #e7eef4, transparent);
	backdrop-filter: blur(9px);
	box-shadow: 0 7px 6px 1px #0000004f;
}
.find-ticket .login-box {
	max-width: 600px;
}
.find-ticket .login-box .btn {
	min-width: 120px;
	max-width: 120px;
}
.find-ticket .login-box .input-group .iti.iti--allow-dropdown {
	flex-grow: 1;
}
/*
.find-ticket #ticketOutput:after {
	content: "";
	width: 100%;
	height: 4rem;
	background: linear-gradient(0deg, #393939, transparent);
	position: absolute;
	z-index: 1;
	display: block;
	bottom: 0;
	left: 0;
	border-radius: 0 0 1rem 1rem;
}
*/

/* Offline Mgmt Portal  */
.offline-portal {
	background: url(https://images.unsplash.com/photo-1576502200916-3808e07386a5?w=900&auto=format&fit=crop&q=60&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8MTZ8fHBhdHRlcm58ZW58MHwwfDB8fHww);
	min-height: 100vh;
	height: 100dvh;
	background-size: cover;
}
body.offline-portal.standard-theme:after {
	content: "";
	width: 100%;
	height: 100%;
	background: #bb174f91;
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	backdrop-filter: blur(65px) saturate(2.5);
}
.offline-portal .sidebar,
.offline-portal .brand-name {
	color: #ffffffdb;
	text-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
	text-wrap-style: balance;
}
/*            .offline-portal .input-group{max-width: 375px}*/

.offline-portal .brand-logo {
	max-width: 100px;
	max-height: 100px;
}
.offline-portal .card {
	background: #ffffffe0;
	backdrop-filter: blur(9px);
}
.offline-portal .login-box {
	max-width: 600px;
}
.offline-portal .login-box .btn {
	min-width: 120px;
	max-width: 120px;
}
.offline-portal .login-box .input-group .iti.iti--allow-dropdown {
	flex-grow: 1;
}

.dashboard-items .card i {
	font-size: 2rem;
	margin-block: 1rem;
	transition: 0.5s all ease;
	text-shadow: 0 9px 7px #073f9133;
	height: 32px;
	width: 32px;
}
.dashboard-items .card .title {
	color: #666;
	font-size: 0.8rem;
	word-break: break-word;
	/*word-spacing: 112px;*/
	text-align: center;
}
.dashboard-items .card:hover i {
	transform: scale(1.3);
	text-shadow: 1px 19px 20px #0d6efd4a;
}
.dashboard-items .card:hover {
	background: #0d6efd;
	color: white;
}
.dashboard-items .card:hover i,
.dashboard-items .card:hover span {
	color: white;
}

.dashboard-items h1,
.dashboard-items h2,
.dashboard-items h3,
.dashboard-items h4,
.dashboard-items h5 {
	margin: 0;
}
select.dt-input {
	margin-right: 0.5rem;
}
.dt-column-title {
	text-wrap: nowrap;
	text-transform: capitalize;
}
.dt-layout-table,
.dt-layout-table .dt-layout-cell {
	width: 100%;
	overflow-y: auto;
	position: relative;
}
.dt-layout-table:after {
	content: "";
	position: absolute;
	top: 45px;
	right: 0;
	background: linear-gradient(90deg, #ffffff00, #0d6efd1f);
	width: 50px;
	height: calc(100% - 100px);
	min-height: 90px;
	padding: 0 !important;
}

table.dataTable td {
	font-family: monospace;
	font-size: 0.8rem;
}
.dataTable thead tr th.text,
.dataTable tbody tr td.text {
	text-align: left !important;
}
.dataTable thead tr th:first-child,
.dataTable tbody tr td:first-child {
	text-align: left !important;
}
.dataTable thead tr th:last-child,
.dataTable tbody tr td:last-child {
	text-align: right !important;
}

td.currency,
th.currency {
	text-align: right;
	text-wrap: nowrap;
}
table.dataTable .dt-type-numeric {
	text-wrap: nowrap;
}
.ticket-contents {
	min-height: 10rem;
	user-select: none;
}

#portal-navbar i {
	margin-right: 5px;
	font-size: 1rem;
}
.portal-users table tr > td:nth-child(n + 2) {
	text-align: left;
}
.portal-users table tr > td:nth-child(n + 3),
.portal-users table tr > th:nth-child(n + 3) {
	text-align: center;
}
.portal-users #users-table_wrapper,
.portal-users .dt-container {
	overflow: hidden;
	width: 100%;
	max-width: 100%;
}

.portal-users .dtfc-fixed-start {
	box-shadow: inset -8px 0 7px #2196f31a;
}

#portal-navbar a.dropdown-item {
	font-size: 0.85rem;
	padding: 9px 20px;
}

#portal-navbar .dropdown-item i {
	margin-right: 15px;
	font-size: 1rem;
}

#portal-navbar {
	font-size: 0.95rem;
	text-transform: capitalize;
}

#portal-navbar .btn-outline-secondary {
	border-color: #36363636;
}

.portal-tooltip {
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
	border-radius: 4px;
}
.chart-container {
	height: 250px;
	padding-bottom: 3rem;
}
.tile {
	max-width: 200px;
	min-width: 180px;
}

.portal-gatekeeper #activityCount {
	font-size: 5rem;
}

.portal-gatekeeper #totalTickets {
	font-size: 2.5rem;
}

.card.past::after {
	content: "Expired";
	position: absolute;
	top: 0;
	left: 15px;
	border-radius: 0 0 4px 4px;
	background: red;
	color: white;
	width: 6em;
	height: 1.2rem;
	font-size: 0.8rem;
	text-align: center;
	box-shadow: 2px 7px 11px 1px #98131363;
}
.card.today::after {
	content: "Today";
	position: absolute;
	top: 0;
	left: 15px;
	border-radius: 0 0 4px 4px;
	background: blue;
	color: white;
	width: 6em;
	height: 1.2rem;
	font-size: 0.8rem;
	text-align: center;
	box-shadow: 2px 7px 11px 1px #2196f363;
}
.card.future::after {
	content: "Upcoming";
	position: absolute;
	top: 0;

	left: 15px;
	border-radius: 0 0 4px 4px;
	background: green;
	color: white;
	width: 6em;
	height: 1.2rem;
	font-size: 0.8rem;
	text-align: center;
	box-shadow: 2px 7px 11px 1px #094b0063;
}
.card.past,
.card.today,
.card.future {
	transition: 0.3s all ease;
}
.card.past:hover,
.card.today:hover,
.card.future:hover {
	box-shadow: 0 0 10px rgba(98, 98, 98, 0.37) !important;
	z-index: 2;
	transform: scale(1.05);
}
.standard-theme .filter-section {
	top: 121px;
	z-index: 1021 !important;
}
.portal-my-bookings .total-pax:after {
	content: "";
	width: 2rem;
	height: 2rem;
	background: #dfdfdf;
	z-index: 1;
	position: absolute;
	right: -19px;
	border-radius: 50% 0 0 50%;
	box-shadow: inset -1px -5px 10px 0 #c2c2c2;
}
.portal-my-bookings .total-pax:before {
	content: "";
	width: 2rem;
	height: 2rem;
	background: #dfdfdf;
	z-index: 1;
	position: absolute;
	left: -19px;
	border-radius: 0 50% 50% 0;
	box-shadow: inset 1px -6px 6px 0 #c2c2c2;
}
.marquee {
	overflow: hidden;
	position: relative;
	white-space: nowrap;
	text-align: right;
	min-height: 30px;
	max-height: 30px;
	line-height: 30px;
}

@keyframes scroll-left {
	0% {
		transform: translateX(100%);
	}

	100% {
		transform: translateX(-100%);
	}
}
#variationsContainer .v-button-container {
	box-shadow: 30px -7px 20px 0 #1a498724;
}
#variationsContainer {
	max-height: 75vh;
	min-height: 75vh;
	overflow: hidden;
}
#variationsContainer .right-pane {
	max-height: 75vh;
	overflow: auto;
}

#variationsContainer .schedule-item {
	background: #fff;
	color: #333;
	border: 2px;
	will-change: transform, opacity, filter;
	transform-origin: left center;
	transform: scaleX(1);
}
.change-schedule-item {
	transform-origin: left center;
}
#variationsContainer .schedule-item[disabled] {
	background: #b7b7b7 !important;
}
#variationsContainer .schedule-item[disabled] .badge {
	background: #878787 !important;
}
#variationsContainer .schedule-item.active {
	background: #333;
	color: #fff;
}
#variationsContainer .schedule-item.slots-available-0 {
	cursor: not-allowed;
}
#variationsContainer .schedule-item .badge {
	background: #dadada;
	color: #666;
}
#variationsContainer .schedule-item.active .badge {
	background: #fff;
	color: #333;
}
.event-card-blur {
	background-color: #00000030 !important;
	backdrop-filter: blur(16px) saturate(4);
	color: white;
	text-shadow: 1px 1px 3px black;
	min-height: 50px;
	line-height: 1.25rem;
	-webkit-backdrop-filter: blur(16px) saturate(4); /* for Safari */
	transform: translate3d(0, 0, 0); /* Fix rendering glitch */
	will-change: transform, backdrop-filter;
	z-index: 9;
	padding: 5px 10px !important;
}

#v-default-tab.active {
	display: flex;
}
.mobile-pay-footer {
	z-index: 1032;
	box-shadow: 30px -7px 20px 0 #1a498724 !important;
}

.pulse,
.shadow-lg.pulse,
.shadow.pulse,
.schedule-item.active.shadow-lg,
.schedule-item.active {
	animation: pulse-animation 2s infinite;
}
@keyframes pulse-animation {
	0% {
		box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.2) !important;
	}
	100% {
		box-shadow: 0 0 0 20px rgba(0, 0, 0, 0) !important;
	}
}
.blur-bg {
	background: #67676799;
	border: none;
	color: white;
	backdrop-filter: blur(13px);
}
.go-back-button {
	height: 2.4rem;
	width: 2.4rem;
	font-size: 1rem;
	padding: 0;
	line-height: 1rem;
	border-radius: 50%;
}
.text-blur {
	filter: blur(3px);
	transition: filter 0.5s ease-in-out;
}
#total-collection {
	transition: 0.3s all ease;
}
.zoom-total-collection {
	zoom: 3;
	position: absolute;
	right: calc(50% - 6rem);
	top: 50%;
	font-size: 4rem;
	background: #ffffffd1;
	padding: 2rem;
	border-radius: 20%;
	box-shadow: 0 0 10px 10px #4a81634a;
	backdrop-filter: blur(10px);
	z-index: 99;
	display: block;
}
.wp-static-msg {
	text-align: justify;
	text-wrap-style: stable;
}
.mobile-footer-band {
	box-shadow: 0 -10px 10px #00000026 !important;
}
.v-modal-image {
	overflow: hidden;
}
@media only screen and (max-width: 767px) {
	.event-sideband {
		max-width: inherit !important;
	}
	.initSVG {
		transition: 0.3s all ease;
		min-height: 80vh !important;
		max-height: 80vh !important;
		height: 80vh !important;
	}
	.infra-dropdown-button ~ ul.dropdown-menu.show {
		position: fixed !important;
		left: 10px !important;
		width: 95% !important;
		bottom: 0 !important;
		margin-top: 0px !important;
		overflow-y: scroll !important;
		max-height: 100% !important;
		top: 0 !important;
		transform: none !important;
		z-index: 99999 !important;
	}
	.infra-dropdown-button ~ ul.dropdown-menu.show:before {
		content: "Select from the options below";
		text-align: center;
		display: block;
		padding: 1.5rem 0 1.5rem 0;
		color: #2196f3;
		border-bottom: groove 1px #dadada;
		font-size: 10px;
	}
}
/*sideband animation and classes*/
.event-sideband {
	background: linear-gradient(180deg, rgb(255 255 255) 1%, rgb(255 193 188) 75%, rgb(236 236 236) 100%) !important;
	color: #3a3a3a !important;
	animation: hueRotateAnim 5s linear infinite;
	filter: hue-rotate(0deg);
	max-width: 74px;
}
@keyframes hueRotateAnim {
	0% {
		filter: hue-rotate(0deg);
	}
	100% {
		filter: hue-rotate(360deg);
	}
}
/* Form io classes */
.formio-collapse-icon.bi.bi-dash-square,
.formio-collapse-icon.bi.bi-plus-square {
	float: left;
	padding: 0.5rem 0.15rem;
}
.formio-collapse-icon.bi.bi-dash-square:after {
	content: "Minimize";
}
.formio-collapse-icon.bi.bi-plus-square:after {
	content: "Maximize";
}
.formio-collapse-icon.bi.bi-dash-square:after,
.formio-collapse-icon.bi.bi-plus-square:after {
	text-transform: math-auto;
	font-style: normal;
	margin-left: 5px;
	clear: both;
}
.formio-form legend {
	font-size: 1rem;
	font-weight: bold;
	padding-left: 1rem;
	margin: 0;
	color: #666;
}
.formio-form .formio-button-remove-row {
	position: absolute;
	background: transparent;
	color: red;
	border: none;
	border-radius: 100%;
	transition: 0.3s all ease;
	width: 40px;
	height: 40px;
	top: calc(50% - 20px);
	left: calc(50% - 20px);
}
.formio-form .formio-button-remove-row:hover {
	box-shadow: 0px 3px 11px #db11564d;
}
.formio-form .table.datagrid-table {
	overflow: hidden;
	max-width: 100%;
}
.formio-form .datagrid-table .choices__item--selectable {
	padding-right: 20px !important;
}
.formio-form tbody .formio-component.has-feedback .field-required:after {
	display: none;
}
.formio-form .formio-component-datagrid .datagrid-table,
.formio-component-datagrid .datagrid-table td,
.formio-component-datagrid .datagrid-table th {
	border: 0px solid transparent!important;
	padding: 0px;
	word-break: keep-all;
	text-wrap-style: balance;
	font-size: 10px;
}
.formio-component-submit {
	display: none !important;
}
.formio-error-wrapper {
	color: #721c24;
	background-color: #fff0f1!important;
	border: none !important;
	border-radius: 8px;
}
.formio-form .card-header {
	border-bottom: 1px solid #dadada;
}

.formio-form label.col-form-label {
	font-size: 1rem;
}
.formio-errors .error {
	font-weight: bold;
	font-size: 1em;
}
.formio-button-add-row,
.formio-form .col-form-label {
	white-space: nowrap;
}
.formio-form .form-control {
	min-height: 58px;
}
.formio-component-file .fileSelector,
.formio-component-file .list-group-item:not(.list-group-header) {
	font-size: 14px;
}
.formio-component-content ol {
	padding-inline-start: 5px;
}
.formio-form-group{padding:3px;}
/* Animated surge badges with bolt*/
.surge {
	margin-left: 5px;
	user-select: none;
	position: realtive;
	animation: boomBoom 0.3s ease-out;
	animation-delay: 0.7s, 0;
	transition: 0.3s all ease;
	font-size: small;
    padding: 0 5px;
}
.surge.default {
	background: linear-gradient(45deg, rgb(157, 0, 0), black);
}
.surge-label {
	opacity: 0;
	width: 0 !important;
	animation: revealText 2.2s ease-in forwards;
	line-height: 1.2rem;
}
.surge-icon {
	animation: keepBleeping 3s infinite alternate;
	animation-delay: 2s;
	animation-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	display: inline-block;
	background: rgb(57, 1, 1);
	border-radius: 100%;
}
.surge-icon i {
	animation: flashBolt 1s 1 alternate;
	color: rgb(235, 219, 0);
	background: none;
	margin-right: 2px;
}

@keyframes boomBoom {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(2);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes keepBleeping {
	0% {
		transform: scale(1) rotate(0deg);
	}
	50% {
		transform: scale(1.2) rotate(-40deg);
	}
	100% {
		transform: scale(1) rotate(0deg);
	}
}

/* Bolt Flash Animation */
@keyframes flashBolt {
	0% {
		transform: scale(1) rotate(0deg);
		opacity: 1;
	}
	50% {
		transform: scale(4.3) rotate(-40deg);
		opacity: 1;
		text-shadow: 00px 10px 5px rgba(85, 79, 0, 0.438);
	}
	100% {
		transform: scale(1) rotate(0deg);
		opacity: 1;
	}
}

/* Text Reveal Animation */
@keyframes revealText {
	0% {
		width: 0;
		opacity: 0;
		display: none;
		font-size: 0px;
	}
	90% {
		width: 50;
		opacity: 0;
		display: none;
		font-size: 0px;
	}
	100% {
		width: 100%;
		opacity: 1;
		font-size: 10px;
	}
}

.avChartContainer {
	max-width: 100%;
	overflow: hidden;
	overflow-x: auto !important;
	scroll-behavior: smooth;
	white-space: nowrap !important;
	display: inline-block;
	scrollbar-width: none !important;
	touch-action: pan-x;
}
#avChart table {
	border-spacing: 0;
}
#avChart table td {
	padding: 2px;
}
/*#avChart:empty{display: none}*/
#avChart:after {
	content: "";
	background: #0000003b;
	backdrop-filter: blur(10px) saturate(1.2);
	width: 100%;
	height: 38px;
	position: absolute;
	top: 0;
	z-index: -1;
	border-bottom: 1px solid #ffffff4a;
}
.avFullWidthContainer::before {
	content: "Availability Chart";
	width: 4rem;
	height: 37px;
	position: absolute;
	top: 0;
	z-index: 12;
	color: white;
	font-size: 0.6rem;
	white-space: normal;
	word-break: break-word;
	padding-top: 5px;
	padding-left: 5px;
	text-wrap-style: pretty;
	background: #00000012;
	backdrop-filter: blur(6px);
	border-right: 1px solid #9999991a;
}

.avFullWidthContainer {
	width: 2550px;
}

#avChart {
	min-height: 140px;
}

/*add tabulator css*/
.portal-report .tabulator-row .tabulator-cell {
	border-right: 1px dashed #c8ddfa !important;
}
.portal-report
	.tabulator
	.tabulator-tableholder
	.tabulator-table
	.tabulator-row.tabulator-calcs.tabulator-calcs-bottom {
	border-top: 1px solid #c8ddfa !important;
}
.portal-report .tabulator .tabulator-tableholder .tabulator-table .tabulator-row.tabulator-calcs {
	background: rgb(232 239 255) !important;
}
.portal-report .tabulator-row.tabulator-group {
	border-bottom: 1px solid #c8ddfa;
	border-right: 1px solid transparent;
	border-top: 1px solid transparent;
}
.portal-report .tabulator-col,
.tabulator .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols {
	border-right: 0.5px solid #c8ddfa !important;
	border-color: #c8ddfa !important;
}
#report-table {
	margin: 30px;
}
.filters {
	margin: 20px 30px;
}
.filters input,
.filters button {
	margin-right: 10px;
}
.tabulator-col-group-header .tabulator-col-title {
	text-align: center !important;
}

/* Full table background white */
.tabulator {
	background-color: white !important;
	margin: 1rem !important;
	color: #000 !important;
	border-radius: 9px;
	border: 1px solid #dadada !important;
}

/* Header background white */
.tabulator-header {
	background-color: white !important;
	border-bottom: 1px solid #dee2e6 !important; /* Optional Bootstrap-like border */
}

/* Individual header columns */
.tabulator-col {
	background-color: white !important;
	color: #000 !important; /* Header text color */
	border-right: 1px solid #dee2e6 !important;
}

/* Table rows */
.tabulator-row {
	background-color: white !important;
	color: #000 !important;
}
/*add tabulator css*/

/*add css for cart*/
.v-child-name {
	min-width: 218px;
}
.v-child-qty {
	width: 20px;
}

/* For mobile devices (max-width 768px, adjust if needed) */
@media (max-width: 768px) {
	.v-child-name {
		min-width: 204px;
	}
}

#qr-shaded-region{z-index:99999!important}
.portal .dropdown-select.form-select  .list{
	background: #ffffff;
	transform: translateX(-25px)!important;
	box-shadow: 0px 10px 30px 6px #0000004a;
	border-radius: 10px;
	min-width:250px!important;
}
.portal .dropdown-select  .current{
	overflow: hidden;
max-width: 250px;
text-overflow: ellipsis;
display: block;
white-space: nowrap;
}
.find-ticket .status-cancelled,.find-ticket .status-failed{background-color:#ffe0e0!important}
.find-ticket .status-success{background-color:#e6ffe6!important}
.find-ticket .btn{text-transform: capitalize;}
.badge-schedule-advance {
    background-color: #0d6efd; /* Bootstrap primary blue */
    color: #fff;
	text-transform: capitalize;
	max-width: 70px;
}

.badge-schedule-current {
    background-color: #198754; /* Bootstrap success green */
    color: #fff;
	text-transform: capitalize;
	max-width: 70px;
}

.badge-schedule-tatkal {
    background-color: #dc3545; /* Bootstrap danger red */
    color: #fff;
	text-transform: capitalize;
	max-width: 70px;
}
