#cmb2-metabox-front-end-post-form h5 {
	font-size: 24px;
	margin: 60px 0 30px 0;
    padding-bottom: 30px;
    border-bottom: 1px solid #e0e0e0;

}

#submit_map {
	height: 300px;
	margin-bottom: 50px;
}
.label-_availability,
.label-_opening_hours,
.label-_menu,
.label-_slots {
	display: none;
}

.slider-disabled,
.disabled .rangeslider {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
-o-filter: grayscale(100%);
opacity: 0.5;
}

.time-slot .day {display: none;}
body .no-slots-information {
	padding-bottom: 5px;
    margin-top: 5px;
}

.listing-widget .booking-event-date {
	display: none;
}
 .fa.booking-loading-icon {
	display: none;
	margin-left:7px;
}
.dashboard-list-box.loading .booking-loading-icon {
	display: inline-block;
	margin-left:7px;
}

 .woocommerce-checkout #order_review.listeo-pay-form{
 	float: none;
 	width:100%;
 }

/* Next Page Button for Map Container */
.listeo-next-page-button {
    position: absolute;
    top: 20px;
    left: 20px;
    background: #fff;
    color: #222;
    padding: 10px 15px;
    border-radius: 50px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    z-index: 1000;
    transition: all 0.3s ease;

    border: none;
    display: flex;
    align-items: center;
    gap: 8px;
}

#dark-mode .listeo-next-page-button {
	background: #222; color: #fff;
}

.listeo-next-page-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.listeo-next-page-button .button-text {
    flex: 1;
    line-height: 1.3;
}

.listeo-next-page-button i {
    font-size: 12px;
    opacity: 0.8;
}

/* Responsive design for mobile */
@media (max-width: 768px) {
    .listeo-next-page-button {
        
    }
}

/* Ensure button doesn't interfere with map controls */
#map-container {
    position: relative;
}

.listeo-next-page-button:active {
    transform: translateY(0);
}

/* Calendar daily prices styling */
.fc-day-price {
    position: absolute;
    bottom: 2px;
    right: 4px;
    font-size: 10px;
    font-weight: bold;
    color: #666;
    background: rgba(255, 255, 255, 0.9);
    padding: 1px 3px;
    border-radius: 2px;
    line-height: 1;
    z-index: 10;
}

.fc-daygrid-day:hover .fc-day-price {
    color: #333;
    background: rgba(255, 255, 255, 1);
}

/* Responsive price display */
@media (max-width: 768px) {
    .fc-day-price {
        font-size: 9px;
        bottom: 1px;
        right: 2px;
        padding: 1px 2px;
    }
}
 a.book-now.button.inactive {
 	background-color:gray; 
 }


 

.switch_box{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 100px;
	min-width: 50px;
	height: 50px;

	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.add-listing-section .switch_box{
	min-height: 67px
}

.switch_box.inside-switch{
	height: auto;
	min-height: auto;
	position: absolute;
	right: 21px;
	top: 5px;	
	zoom:0.7;
}
/* Switch 1 Specific Styles Start */


input[type="checkbox"].switch_1{
	font-size: 20px;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	width: 3.5em;
	height: 1.5em;
	background: #ddd;
	border-radius: 3em;
	position: relative;
	cursor: pointer;
	outline: none;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  }
 
  input[type="checkbox"].switch_1:after{
	position: absolute;
	content: "";
	width: 1.5em;
	height: 1.5em;
	border-radius: 50%;
	background: #fff;

	-webkit-transform: scale(.7);
	        transform: scale(.7);
	left: 0;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
  }
  
  input[type="checkbox"].switch_1:checked:after{
	left: calc(100% - 1.5em);
  }
	

/* Switch 1 Specific Style End */

.woocommerce-order-pay.user_not_logged_in .woocommerce-info {
	width: 41.66666667%;
    margin-left: 25%;

}
#chart-date-range-enabler,
#booking-date-range-enabler {
    float: right;
    background: #fff;
    border-radius: 3px;
    cursor: pointer;
    padding: 6px;
    display: inline-block;
    position: relative;
    margin: 0;
    box-sizing: border-box;
    color: #666;
    font-weight: 600;
    transition: 0.3s;
    background-color: #fff;
    margin-left: 15px;
    top: 0px;
}

.sign-in-form label input[type="checkbox"] {
    height: auto;
    width: 20px;
    box-shadow: 0px 0px 0px 0px;
}



.second-slot-taken:not( .disabled ), .first-slot-taken:not( .disabled ) {
	position: relative;
	z-index: 0;
}

.second-slot-taken:not( .disabled )::before, .first-slot-taken:not( .disabled )::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	z-index: -1;
	mix-blend-mode: soft-light;
}

.second-slot-taken:not( .disabled )::before {
	border-bottom: 34px solid #f4f4f4;
	border-left: 32px solid transparent;
}

.first-slot-taken:not( .disabled )::before {
	border-top: 34px solid #f4f4f4;
	border-right: 32px solid transparent;
}

.daterangepicker.daterangepicker td.disabled, .daterangepicker.daterangepicker option.disabled {
	background-color: #f4f4f4;
}


.first-slot-taken:not(.active, .in-range, :hover) {
	color: #c37979 !important;
}

.first-slot-taken:not(.active, .in-range, :hover)::before {
	border-top: 34px solid #ffe9e9;
	border-right: 32px solid transparent;
	mix-blend-mode: normal;
	color: #c37979;
}

.daterangepicker .calendar-table td.available.second-slot-taken:not(.active, .in-range, :hover) {
	background: #e0f6dd;
	color: #6a9664;
}

.daterangepicker .calendar-table td.available.second-slot-taken:not(.active, .in-range, :hover):before {
	border-bottom: 34px solid #ffe9e9;
	border-left: 36px solid transparent;
	mix-blend-mode: normal;
}

/* FullCalendar Daily Prices Styles */
.fc-day-price {
	position: absolute;
	bottom: 2px;
	right: 4px;
	font-size: 14px;
	font-weight: 400;
	background: rgba(76, 175, 80, 0.1);
	color: #2E7D32;
	padding: 1px 4px;
	border-radius: 3px;
	line-height: 1.2;
	z-index: 3;
}

.fc-daygrid-day {
	position: relative;
}

.fc-daygrid-day:hover .fc-day-price,
.fc-day-price:hover {
	background: rgba(76, 175, 80, 0.1);
	color: #2E7D32;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.fc-day-price {
		font-size: 10px;
		padding: 1px 2px;
		bottom: 1px;
		right: 2px;
	}
}

.fc-toolbar-chunk { filter: grayscale(100%); }

/* Custom Search Fields Grouped Styles */
.custom-search-fields-container {
	margin-top: 15px;
}

.custom-search-group {
	border: none;
	width: 100%;
	border-radius: 4px;
	margin-bottom: 20px;
	background: transparent;
	display: flex;
	flex-direction: column;
}

.custom-search-group-header {
	padding: 0;
	background: transparent;
	cursor: pointer;
	transition: background-color 0.3s ease;
	position: relative;
	border-radius: 4px;
}

.custom-search-group-header:hover {

}

.custom-search-group-title {
	margin: 0;
	font-size: 14px;
	font-weight: 600;
	color: #333;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	margin-bottom: 10px;
}

.custom-search-group-title .toggle-icon {
	font-size: 14px;
	transition: transform 0.3s ease;
	color: var(--listeo-primary-color);
}

.custom-search-group-content {
	padding: 15px;
	background: transparent;
	border: 1px solid #e0e0e0;
	border-radius: 5px;
	padding-bottom: 20px;
	display: flex;
	flex-direction: column;
	gap: 0;
	opacity:1;
	transition: opacity 0.2s;
}
.custom-search-group-content:not(.collapsed) {
	
}
.custom-search-group-content.collapsed {
	opacity: 0;
}


.custom-search-field-wrapper {
	margin-bottom: 15px;
	float: none;
	min-height: 45px;
}

.checkboxes .bootstrap-select li { padding: 0;}

.custom-search-field-wrapper:last-child {
	margin-bottom: 0;
}


.custom-search-field-wrapper .col-md-12:last-child { margin-bottom: 0; padding-bottom: 0;}
.custom-search-field-wrapper .col-md-12 { margin: 0; padding: 0;}

.custom-search-field-wrapper  .checkboxes.one-in-row label { margin-top: 2px !important;}

/* Panel-specific styles for split map layout */
.custom-fields-panel {
	margin-right: 10px;
}

.custom-fields-panel a {
	font-size: 13px;
	font-weight: 600;
}

.custom-fields-panel .panel-dropdown-content {
	min-width: 150px;
}

.custom-fields-panel .custom-search-field-wrapper {
	
/* overflow: hidden; */
	
min-height: 75px;

}

.panel-dropdown-content .custom-search-field-wrapper {display: flex;flex-direction: column;}
.custom-fields-panel {display: flex;flex-direction: column;}

.panel-dropdown-content .custom-search-field-wrapper .checkboxes label:before {
	top: 0px
}
.custom-fields-panel .custom-search-field-wrapper:last-child {
	border-bottom: none;
}
.panel-dropdown  .custom-search-field-wrapper .checkboxes:not('.one-in-row') label::before { top: 20px}


.custom-search-field-wrapper .bootstrap-select.btn-group, 
.custom-search-field-wrapper input, 
.custom-search-field-wrapper textarea, 
.custom-search-field-wrapper input, 
.custom-search-field-wrapper select, 
.custom-search-field-wrapper.chosen-container {
	margin-bottom: 0 !important;
	border-radius: 4px;
}
.main-search-inner .custom-search-field-wrapper .bootstrap-select.btn-group { border: 1px solid #e0e0e0; }

	
.main-search-input  .panel-dropdown .custom-search-field-wrapper  a {
	line-height: 20px;
	height: auto;
	padding: 7px 10px;
	vertical-align: middle;
} 

.custom-search-field-label { 
	font-weight: 600; font-size: 14px; color: #333; 
}

.custom-search-field-label:not(.panel-dropdown-content .custom-search-field-label) { 
	margin-top: 12px !important;
}

.panel-dropdown-content  .custom-search-field-wrapper:first-of-type .custom-search-field-label,
.custom-search-group-content .custom-search-field-wrapper:first-of-type .custom-search-field-label {
	margin-top: 0 !important;
}

#dark-mode .custom-search-field-label {color: #fff; }

/* Dark Mode */
/* Dark Mode CSS - Color-related properties only */

body#dark-mode #cmb2-metabox-front-end-post-form h5 {
    border-bottom: 1px solid #333;
}

body#dark-mode .slider-disabled,
body#dark-mode .disabled .rangeslider {
    -webkit-filter: grayscale(100%) brightness(0.7);
    -moz-filter: grayscale(100%) brightness(0.7);
    -ms-filter: grayscale(100%) brightness(0.7);
    -o-filter: grayscale(100%) brightness(0.7);
}

body#dark-mode .fc-day-price {
    color: #ccc;
    background: rgba(40, 40, 40, 0.9);
}

body#dark-mode .fc-daygrid-day:hover .fc-day-price {
    color: #fff;
    background: rgba(60, 60, 60, 1);
}

body#dark-mode a.book-now.button.inactive {
    background-color: #555;
}

body#dark-mode input[type="checkbox"].switch_1 {
    background: #444;
}

body#dark-mode input[type="checkbox"].switch_1:after {
    background: #222;
}

body#dark-mode #chart-date-range-enabler,
body#dark-mode #booking-date-range-enabler {
    background: #333;
    color: #ccc;
    background-color: #333;
}

body#dark-mode .second-slot-taken:not(.disabled)::before {
    border-bottom: 34px solid #2a2a2a;
}

body#dark-mode .first-slot-taken:not(.disabled)::before {
    border-top: 34px solid #2a2a2a;
}

body#dark-mode .daterangepicker.daterangepicker td.disabled, 
body#dark-mode .daterangepicker.daterangepicker option.disabled {
    background-color: #2a2a2a;
}

body#dark-mode .first-slot-taken:not(.active, .in-range, :hover) {
    color: #e87979 !important;
}

body#dark-mode .first-slot-taken:not(.active, .in-range, :hover)::before {
    border-top: 34px solid #4a2a2a;
    color: #e87979;
}

body#dark-mode .daterangepicker .calendar-table td.available.second-slot-taken:not(.active, .in-range, :hover) {
    background: #2a4a2a;
    color: #8cc77f;
}

body#dark-mode .daterangepicker .calendar-table td.available.second-slot-taken:not(.active, .in-range, :hover):before {
    border-bottom: 34px solid #4a2a2a;
}

/* FullCalendar Daily Prices Dark Mode */
body#dark-mode .fc-day-price {
    background: rgba(76, 175, 80, 0.2);
    color: #81C784;
}

body#dark-mode .fc-daygrid-day:hover .fc-day-price,
body#dark-mode .fc-day-price:hover {
    background: rgba(76, 175, 80, 0.3);
    color: #A5D6A7;
}

body#dark-mode .fc-toolbar-chunk { 
    filter: grayscale(100%) brightness(0.8); 
}

/* Custom Search Fields Dark Mode */
body#dark-mode .custom-search-group-title {
    color: #e0e0e0;
}

body#dark-mode .custom-search-group-title .toggle-icon {
    color: var(--listeo-primary-color, #4CAF50);
}

body#dark-mode .custom-search-group-content {
    background: transparent;
    border: 1px solid #444;
}

body#dark-mode .main-search-inner .custom-search-field-wrapper .bootstrap-select.btn-group { 
    border: 1px solid #444; 
}

/* Additional dark mode improvements */
body#dark-mode .woocommerce-order-pay.user_not_logged_in .woocommerce-info {
    background: #333;
    color: #e0e0e0;
}

/* Form inputs and selects */
body#dark-mode .custom-search-field-wrapper input,
body#dark-mode .custom-search-field-wrapper textarea,
body#dark-mode .custom-search-field-wrapper select {
    background: #333;
    color: #e0e0e0;
    border-color: #555;
}

body#dark-mode .custom-search-field-wrapper input::placeholder,
body#dark-mode .custom-search-field-wrapper textarea::placeholder {
    color: #999;
}

/* Bootstrap select dark mode */
body#dark-mode .bootstrap-select .dropdown-toggle {
    background: #333;
    color: #e0e0e0;
    border-color: #555;
}

body#dark-mode .bootstrap-select .dropdown-menu {
    background: #333;
    border-color: #555;
}

body#dark-mode .bootstrap-select .dropdown-menu li a {
    color: #e0e0e0;
}

body#dark-mode .bootstrap-select .dropdown-menu li a:hover {
    background: #444;
    color: #fff;
}

/* Panel dropdown dark mode */
body#dark-mode .custom-fields-panel .panel-dropdown-content {
    background: #333;
    border-color: #555;
}

body#dark-mode .custom-fields-panel a {
    color: #e0e0e0;
}

/* Checkbox styling for dark mode */
body#dark-mode .checkboxes label {
    color: #e0e0e0;
}

body#dark-mode .sign-in-form label input[type="checkbox"] {
    background: #333;
    border-color: #555;
}

/* User Location Marker Styles */
.listeo-user-location-marker {
    background: transparent !important;
    border: none !important;
}

.user-location-container {
    position: relative;
    z-index: 1000;
}

.user-location-marker {
    width: 15px;
    height: 15px;
    background: #007cba;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 124, 186, 0.4);
    position: relative;
    animation: userLocationPulse 2s infinite;
    border: 3px solid white;
}

/* Pulsing animation for user location marker */
@keyframes userLocationPulse {
    0% {
        transform: scale(1);
        box-shadow: 0 2px 10px rgba(0, 124, 186, 0.4);
    }
    50% {
        transform: scale(1.1);
        box-shadow: 0 4px 20px rgba(0, 124, 186, 0.6);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 2px 10px rgba(0, 124, 186, 0.4);
    }
}

/* User location popup styles */
.user-location-popup {
    text-align: center;
    min-width: 200px;
}

.user-location-popup strong {
    color: #007cba;
    font-size: 14px;
    display: block;
    margin-bottom: 5px;
}

.user-location-popup small {
    color: #666;
    font-size: 11px;
}

/* Dark mode styles for user location */
body#dark-mode .user-location-marker {
    background: #4a9eff;
    box-shadow: 0 2px 10px rgba(74, 158, 255, 0.4);
}

body#dark-mode .user-location-popup strong {
    color: #4a9eff;
}

body#dark-mode .user-location-popup small {
    color: #ccc;
}

@media (max-width: 768px) {
    .user-location-marker {
        width: 12px;
        height: 12px;
    }
}

.listeo-user-location-marker {pointer-events: none !important;}

/* Message Attachments Styling */
.message-attachment-upload {
    margin: 15px 0 0 0;
    padding: 0px 0;
    border-top: none;
}

.attachment-label {
    display: inline-block;
    padding: 4px 15px;
    background: #f4f4f4;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s;
    position: relative;
}

/* Custom tooltip */
.attachment-label:hover::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: white;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 1000;
    margin-bottom: 5px;
}

.attachment-label:hover::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: #333;
    margin-bottom: -4px;
    z-index: 1000;
}

.attachment-label:hover {
    background: #e8e8e8;
}

.attachment-label i {
    margin-right: 8px;
    color: #666;
}

.attachment-info {
    display: block;
    font-size: 11px;
    color: #999;
    margin-top: 2px;
    line-height: 1.2;
}

.attachment-preview {
    display: inline-block;
    padding: 8px 12px;
    background: #e8f4f8;
    border-radius: 4px;
    position: relative;
}

.attachment-preview-name {
    color: #333;
    margin-right: 10px;
}

.remove-attachment {
    color: #ff6b6b;
    margin-left: 10px;
}

.remove-attachment:hover {
    color: #ff5252;
}

.attachment-upload-progress {
    margin-top: 10px;
}

.progress-bar {
    width: 100%;
    height: 6px;
    background: #f0f0f0;
    border-radius: 3px;
    overflow: hidden;
}

.progress-fill {
    height: 100%;
    background: var(--primary-color, #3498db);
    width: 0;
    transition: width 0.3s;
}

/* Message bubble attachments */
.message-attachment {
    margin-top: 10px;
}

.attachment-link {
    display: inline-block;
    padding: 3px 12px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    text-decoration: none;
    color: #333;
    transition: all 0.3s;
}

.attachment-link:hover {
    background: #fff;
    border-color: var(--primary-color, #3498db);
    color: var(--primary-color, #3498db);
    text-decoration: none;
}

.attachment-link i {
    margin-right: 8px;
    font-size: 16px;
}

.attachment-name {
    font-weight: 500;
}

.attachment-size {
    color: #999;
    font-size: 12px;
    margin-left: 5px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .attachment-label span {
        display: none;
    }

    .attachment-label i {
        margin-right: 0;
    }
}

/* Load More Button Styles */
.listeo-load-more-container {
	text-align: center;
	padding: 40px 0;
	clear: both;
}

.listeo-load-more-container .fa-spinner {
    margin-right: 0 !important;
}

.listeo-load-more-button {
	display: inline-block;
	background: var(--listeo-primary-color);
	color: #fff;
	padding: 7px 20px !important;
	border-radius: 4px;
	border: none;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.listeo-load-more-button:hover {
	background: var(--listeo-primary-color);
	color: #fff;
}

#listeo-listings-container .clearfix {display: none;}

/* .listeo-load-more-button:disabled {
	background: #ccc;
	cursor: not-allowed;
	opacity: 0.6;
}

.listeo-load-more-button:disabled:hover {
	transform: none;
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
} */

.listeo-load-more-button .button-text {
	display: inline-block;
}

.listeo-load-more-button .loading-icon {
	margin-left: 8px;
	color: #fff;
}

.listeo-load-more-button.loading {
	opacity: 0.8;
	cursor: wait;
}

.listeo-load-more-button.loading .loading-icon {
	color: #fff;
}

/* Loading state for listings container during append */
#listeo-listings-container.loading {
	position: relative;
}

#listeo-listings-container.loading:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,0);
	z-index: 1;
}

/* Hide pagination when infinite scroll is active */
.listeo-infinite-scroll-active .pagination-container {
	display: none !important;
}

/* Password strength requirements notification */
.password-field-wrapper {
	position: relative;
}

.password-strength-requirements {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin-top: 8px;
	padding: 12px 15px;
	background: #f5f5f5;
	border-radius: 4px;
	font-size: 13px;
	line-height: 1.6;
	color: #666;
	animation: fadeIn 0.3s ease;
	z-index: 10;
}

.password-strength-requirements::before {
	content: '';
	position: absolute;
	top: -8px;
	left: 20px;
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 8px solid #f5f5f5;
}

.password-strength-requirements.visible {
	display: block;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-5px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.password-strength-requirements strong {
	color: #444;
	font-weight: 600;
	transition: color 0.3s ease;
}

/* Hide old password strength meter */
.pwstrength_viewport_progress.password-strength-visible {
	display: none !important;
}

/* ========================================
   Time Slots Carousel Layout
======================================== */

.time-slots-carousel-container {
	position: relative;
	width: 100%;
	padding: 0;
	/* background: #fff; */
	border-radius: 4px;
	margin-bottom: 18px;
}

/* Hide date picker when carousel mode is active */
.slot-carousel-mode-hidden {
	display: none !important;
}


/* Slot Carousel Navigation */
.slot-carousel-navigation {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	display: flex;
	justify-content: space-between;
	pointer-events: none;
	z-index: 10;
}

.slot-carousel-nav-btn {
	pointer-events: all;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: none;
	background: #fff;
	color: #666;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.slot-carousel-nav-btn:hover:not(:disabled) {
	background: var(--listeo-primary-color);
	border-color: var(--listeo-primary-color);
	color: #fff;
}

.slot-carousel-nav-btn i {
		transition: 0.2s;
}

.slot-carousel-nav-btn:hover:not(:disabled) i {
	color: #fff;
}

.slot-carousel-nav-btn:disabled {
	opacity: 0.3;
	cursor: not-allowed;
}

.slot-carousel-nav-btn.prev-day {
	margin-left: -20px;
}

.slot-carousel-nav-btn.next-day {
	margin-right: -20px;
}

/* Carousel Viewport */
.slot-carousel-viewport {
	overflow: hidden;
	width: 100%;
	transition: height 0.4s ease;
	padding: 5px 15px;
box-shadow: 0 1px 6px 0px rgba(0, 0, 0, 0.1);
    background: #fff;
    border-radius: 6px;
}

.slot-carousel-track {
	display: flex;
	transition: transform 0.4s ease;
	gap: 15px;
}

/* Day Column - Default: 3 columns above 1360px */
.slot-carousel-day-column {
	flex: 0 0 calc(33.333% - 10px);
	min-width: calc(33.333% - 10px);
	max-width: calc(33.333% - 10px);
	width: calc(33.333% - 10px);
}

.calendar-day {
	border: none;
	border-radius: 6px;
	padding: 15px 0px;
	display: flex;
	flex-direction: column;
	width: 100%;
	/* background: #fff;
	box-shadow: 0 1px 6px 0px rgba(0, 0, 0, 0.1); */
}

.calendar-day.day-placeholder {
	opacity: 0.6;
}

.calendar-day.day-available {
	background: #fff;
}

/* Day Header */
.time-slots-carousel-container  .calendar-day-date {
	text-align: center;
	border-bottom: none;
	margin-bottom: 10px;
	padding: 0;
	background: transparent;
}

.time-slots-carousel-container .calendar-day-date .day-name {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	color: #333;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 20px;
	margin-bottom: -3px;
}

.time-slots-carousel-container  .calendar-day-date .day-date {
	margin: 0;
	font-size: 12px;
	color: #888;
	font-weight: 500;
	line-height: 20px;
}

/* Slots List */
.calendar-day-slots {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.calendar-day-slots-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.calendar-day-slots-list-item {
	margin: 0;
}

/* Slot Button */
.calendar-slot {
	width: 100%;
	padding: 10px 8px;
	border: none;
	border-radius: 5px;
	background: #f9f9f9;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
	color: #666;
	padding: 6px 0;
	line-height: 16px;
}

.calendar-slot-available {
	background: var(--listeo-primary-color-light);
	border-color: var(--listeo-primary-color);
	color: var(--listeo-primary-color);
	/* padding: 5px; */
	/* line-height: 16px; */
}

.calendar-slot-available:hover {
	background: var(--listeo-primary-color);
	color: #fff;
}

.calendar-slot-available.selected {
	background: var(--listeo-primary-color);
	color: #fff;
	border-color: var(--listeo-primary-color);
}

.calendar-slot-booked {
	background: #f5f5f5;
	border-color: #ddd;
	color: #999;
	cursor: not-allowed;
	opacity: 0.6;
}

.calendar-slot-placeholder {
	background: transparent;
	border-color: transparent;
	color: #ccc;
	cursor: default;
}

/* Show More Feature */
.hidden-slot {
	display: none;
}

.show-more-item {

}

.calendar-slot-show-more {
	width: 100%;
	padding: 10px;
	background: transparent;
	border: 1px dashed var(--listeo-primary-color);
	border-radius: 4px;
	color: var(--listeo-primary-color);
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	text-align: center;
	line-height: 16px;
	margin: 0;
}

.calendar-slot-show-more:hover {
	background: var(--listeo-primary-color-light);
	border-style: solid;
}

.calendar-day.expanded .hidden-slot {
	display: block;
}

.calendar-day.expanded .show-more-item {
	display: none;
}

/* Carousel Loading State */
.time-slots-carousel-container {
	position: relative;
}

/* Initial state - before JS loads */
.slot-carousel-viewport {
	max-height: 150px;
	overflow: hidden;
	transition: max-height 0.4s ease, height 0.4s ease;
}

/* Carousel Loader (overlay) */
.slot-carousel-loader {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(
	to bottom,
	rgba(255, 255, 255, 0.4) 0%,
	rgba(255, 255, 255, 1) 100%
	);
	z-index: 10;
	opacity: 1;
	border-radius: 6px;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.slot-carousel-loader-spinner {
	width: 30px;
	height: 30px;
	border: 3px solid rgba(0, 0, 0, 0.1);
	border-top-color: var(--listeo-primary-color);
	border-radius: 50%;
	animation: carousel-spinner-rotate 0.8s linear infinite;
}

@keyframes carousel-spinner-rotate {
	to {
		transform: rotate(360deg);
	}
}

/* Loaded state - after JS initializes */
.time-slots-carousel-container.slot-carousel-loaded .slot-carousel-viewport {
	max-height: none;
}

.time-slots-carousel-container.slot-carousel-loaded .slot-carousel-loader {
	opacity: 0;
	pointer-events: none;
}

/* Booked Slot Styles */
.calendar-slot-booked {
	filter: grayscale(1);
	opacity: 0.5;
	text-decoration: line-through;
	pointer-events: none;
	cursor: not-allowed;
	background: #f5f5f5 !important;
	color: #999 !important;
	border-color: #ddd !important;
}

/* ========================================
   Form Validation Styles
   ======================================== */

/* Error styling for Select2 fields */
.select2-container.msf-input-error .select2-selection {
	border-color: #dc3545 !important;
	border-width: 2px !important;
	box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.select2-container.msf-input-error .select2-selection__rendered {
	color: #dc3545 !important;
}

/* Error styling for standard input fields */
input.msf-input-error,
select.msf-input-error,
textarea.msf-input-error {
	border-color: #dc3545 !important;
	border-width: 2px !important;
	box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

/* Pulsing animation for invalid fields */
@keyframes pulse-error {
	0% {
		box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
	}
	50% {
		box-shadow: 0 0 0 0.4rem rgba(220, 53, 69, 0.15);
	}
	100% {
		box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
	}
}

.select2-container.msf-input-error .select2-selection {
	animation: pulse-error 1s ease-in-out 2;
}

/* Responsive Breakpoints */

/* 2 columns: 992px - 1360px */
@media (max-width: 1360px) {
	.slot-carousel-day-column {
		flex: 0 0 calc(50% - 7.5px);
		min-width: calc(50% - 7.5px);
		max-width: calc(50% - 7.5px);
		width: calc(50% - 7.5px);
	}
}
.fc-icon,.fc-unselectable{-moz-user-select:none;-ms-user-select:none;}.fc .fc-button,.fc-icon{text-transform:none;font-weight:400;}.fc-not-allowed,.fc-not-allowed .fc-event{cursor:not-allowed;}.fc .fc-button:not(:disabled),.fc a[data-navlink],.fc-event.fc-event-draggable,.fc-event[href]{cursor:pointer;}.fc-unselectable{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;}.fc{display:flex;flex-direction:column;font-size:1em;}.fc .fc-button,.fc-icon{display:inline-block;text-align:center;}.fc,.fc *,.fc :after,.fc :before{box-sizing:border-box;}.fc table{border-collapse:collapse;border-spacing:0;font-size:1em;}.fc th{text-align:center;}.fc td,.fc th{vertical-align:top;padding:0;}.fc .fc-button,.fc .fc-button .fc-icon,.fc .fc-button-group,.fc .fc-timegrid-slot-label{vertical-align:middle;}.fc a[data-navlink]:hover{text-decoration:underline;}.fc .fc-button:hover,.fc .fc-list-event-title a,a.fc-event,a.fc-event:hover{text-decoration:none;}.fc-direction-ltr{direction:ltr;text-align:left;}.fc-direction-rtl{direction:rtl;text-align:right;}.fc-theme-standard td,.fc-theme-standard th{border:1px solid #ddd;border:1px solid var(--fc-border-color,#ddd);}.fc-liquid-hack td,.fc-liquid-hack th{position:relative;}.fc-icon{width:1em;height:1em;-webkit-user-select:none;user-select:none;font-family:fcicons !important;speak:none;font-style:normal;font-variant:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.fc-icon-chevron-left:before{content:"";}.fc-icon-chevron-right:before{content:"";}.fc-icon-chevrons-left:before{content:"";}.fc-icon-chevrons-right:before{content:"";}.fc-icon-minus-square:before{content:"";}.fc-icon-plus-square:before{content:"";}.fc-icon-x:before{content:"";}.fc .fc-button{overflow:visible;text-transform:none;margin:0;font-family:inherit;}.fc .fc-button::-moz-focus-inner{padding:0;border-style:none;}.fc .fc-button{-webkit-appearance:button;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.4em .65em;font-size:1em;line-height:1.5;border-radius:.25em;}.fc .fc-button:focus{outline:0;box-shadow:0 0 0 .2rem rgba(44,62,80,.25);}.fc .fc-button-primary:focus,.fc .fc-button-primary:not(:disabled).fc-button-active:focus,.fc .fc-button-primary:not(:disabled):active:focus{box-shadow:0 0 0 .2rem rgba(76,91,106,.5);}.fc .fc-button:disabled{opacity:.65;}.fc .fc-daygrid-event-harness,.fc .fc-daygrid-event-harness-abs{cursor:pointer;}.fc-button{outline:none !important;box-shadow:none !important;}.fc .fc-button-primary{color:#fff;color:var(--fc-button-text-color,#fff);background-color:#444;background-color:var(--fc-button-bg-color,#444);border-color:#444;border-color:var(--fc-button-border-color,#444);}.fc .fc-button-primary:hover{color:#fff;color:var(--fc-button-text-color,#fff);background-color:#333;background-color:var(--fc-button-hover-bg-color,#333);border-color:#333;border-color:var(--fc-button-hover-border-color,#333);}.fc .fc-button-primary:disabled{color:#fff;color:var(--fc-button-text-color,#fff);background-color:#444;background-color:var(--fc-button-bg-color,#444);border-color:#444;border-color:var(--fc-button-border-color,#444);}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{color:#fff;color:var(--fc-button-text-color,#fff);background-color:#333;background-color:var(--fc-button-active-bg-color,#333);border-color:#151e27;border-color:var(--fc-button-active-border-color,#333);}.fc .fc-button .fc-icon{font-size:1.5em;}.fc .fc-button-group{position:relative;display:inline-flex;}.fc .fc-button-group > .fc-button{position:relative;flex:1 1 auto;}.fc .fc-button-group > .fc-button.fc-button-active,.fc .fc-button-group > .fc-button:active,.fc .fc-button-group > .fc-button:focus,.fc .fc-button-group > .fc-button:hover{z-index:1;}.fc-direction-ltr .fc-button-group > .fc-button:not(:first-child){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0;}.fc-direction-ltr .fc-button-group > .fc-button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0;}.fc-direction-rtl .fc-button-group > .fc-button:not(:first-child){margin-right:-1px;border-top-right-radius:0;border-bottom-right-radius:0;}.fc-direction-rtl .fc-button-group > .fc-button:not(:last-child){border-top-left-radius:0;border-bottom-left-radius:0;}.fc .fc-toolbar{display:flex;justify-content:space-between;align-items:center;}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.5em;}.fc .fc-toolbar.fc-footer-toolbar{margin-top:1.5em;}.fc .fc-toolbar-title{font-size:1.75em;margin:0;}.fc-direction-ltr .fc-toolbar > * > :not(:first-child){margin-left:.75em;}.fc-direction-rtl .fc-toolbar > * > :not(:first-child){margin-right:.75em;}.fc-direction-rtl .fc-toolbar-ltr{flex-direction:row-reverse;}.fc .fc-scroller{-webkit-overflow-scrolling:touch;position:relative;}.fc .fc-scroller-liquid{height:100%;}.fc .fc-scroller-liquid-absolute{position:absolute;top:0;right:0;left:0;bottom:0;}.fc .fc-scroller-harness{position:relative;overflow:hidden;direction:ltr;}.fc .fc-scroller-harness-liquid{height:100%;}.fc-direction-rtl .fc-scroller-harness > .fc-scroller{direction:rtl;}.fc-theme-standard .fc-scrollgrid{border:1px solid #ddd;border:1px solid var(--fc-border-color,#ddd);}.fc .fc-scrollgrid,.fc .fc-scrollgrid-section-footer > *,.fc .fc-scrollgrid-section-header > *{border-bottom-width:0;}.fc .fc-scrollgrid,.fc .fc-scrollgrid table{width:100%;table-layout:fixed;}.fc .fc-scrollgrid table{border-top-style:hidden;border-left-style:hidden;border-right-style:hidden;}.fc .fc-scrollgrid{border-collapse:separate;border-right-width:0;}.fc .fc-scrollgrid-liquid{height:100%;}.fc .fc-scrollgrid-section,.fc .fc-scrollgrid-section table,.fc .fc-scrollgrid-section > td{height:1px;}.fc .fc-scrollgrid-section-liquid > td{height:100%;}.fc .fc-scrollgrid-section > *{border-top-width:0;border-left-width:0;}.fc .fc-scrollgrid-section-body table,.fc .fc-scrollgrid-section-footer table{border-bottom-style:hidden;}.fc .fc-scrollgrid-section-sticky > *{background:var(--fc-page-bg-color,#fff);position:sticky;z-index:3;}.fc .fc-scrollgrid-section-header.fc-scrollgrid-section-sticky > *{top:0;}.fc .fc-scrollgrid-section-footer.fc-scrollgrid-section-sticky > *{bottom:0;}.fc .fc-scrollgrid-sticky-shim{height:1px;margin-bottom:-1px;}.fc-sticky{position:sticky;}.fc .fc-view-harness{flex-grow:1;position:relative;}.fc .fc-bg-event,.fc .fc-highlight,.fc .fc-non-business,.fc .fc-view-harness-active > .fc-view{position:absolute;top:0;left:0;right:0;bottom:0;}.fc .fc-col-header-cell-cushion{display:inline-block;padding:2px 4px;}.fc .fc-non-business{background:rgba(215,215,215,.3);background:var(--fc-non-business-color,rgba(215,215,215,.3));}.fc .fc-bg-event{background:var(--fc-bg-event-color,#8fdf82);opacity:.3;opacity:var(--fc-bg-event-opacity,.3);}.fc .fc-bg-event .fc-event-title{margin:.5em;font-size:.85em;font-size:var(--fc-small-font-size,.85em);font-style:italic;}.fc .fc-highlight{background:rgba(188,232,241,.3);background:var(--fc-highlight-color,rgba(188,232,241,.3));}.fc .fc-cell-shaded,.fc .fc-day-disabled{background:rgba(208,208,208,.3);background:var(--fc-neutral-bg-color,rgba(208,208,208,.3));}.fc-event .fc-event-main{position:relative;z-index:2;}.fc-event-dragging:not(.fc-event-selected){opacity:.75;}.fc-event-dragging.fc-event-selected{box-shadow:0 2px 7px rgba(0,0,0,.3);}.fc-event .fc-event-resizer{display:none;position:absolute;z-index:4;}.fc-event-selected .fc-event-resizer,.fc-event:hover .fc-event-resizer,.fc-h-event,.fc-v-event{display:block;}.fc-event-selected .fc-event-resizer{border-radius:4px;border-radius:calc(var(--fc-event-resizer-dot-total-width,8px) / 2);border-width:1px;border-width:var(--fc-event-resizer-dot-border-width,1px);width:8px;width:var(--fc-event-resizer-dot-total-width,8px);height:8px;height:var(--fc-event-resizer-dot-total-width,8px);border-style:solid;border-color:inherit;background:var(--fc-page-bg-color,#fff);}.fc-event-selected .fc-event-resizer:before{content:"";position:absolute;top:-20px;left:-20px;right:-20px;bottom:-20px;}.fc-event-selected,.fc-event:focus{box-shadow:0 2px 5px rgba(0,0,0,.2);}.fc-event-selected:before,.fc-event:focus:before{content:"";position:absolute;z-index:3;top:0;left:0;right:0;bottom:0;}.fc-event-selected:after,.fc-event:focus:after{content:"";background:rgba(0,0,0,.25);background:var(--fc-event-selected-overlay-color,rgba(0,0,0,.25));position:absolute;z-index:1;top:-1px;left:-1px;right:-1px;bottom:-1px;}.fc-h-event{border:1px solid #3788d8;border:1px solid var(--fc-event-border-color,#3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color,#3788d8);}.fc-h-event .fc-event-main{color:#fff;color:var(--fc-event-text-color,#fff);}.fc-h-event .fc-event-main-frame{display:flex;}.fc-h-event .fc-event-time{max-width:100%;overflow:hidden;}.fc-h-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-width:0;}.fc-h-event .fc-event-title{display:inline-block;vertical-align:top;left:0;right:0;max-width:100%;overflow:hidden;}.fc-h-event.fc-event-selected:before{top:-10px;bottom:-10px;}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-start),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-end){border-top-left-radius:0;border-bottom-left-radius:0;border-left-width:0;}.fc-direction-ltr .fc-daygrid-block-event:not(.fc-event-end),.fc-direction-rtl .fc-daygrid-block-event:not(.fc-event-start){border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0;}.fc-h-event:not(.fc-event-selected) .fc-event-resizer{top:0;bottom:0;width:8px;width:var(--fc-event-resizer-thickness,8px);}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end{cursor:w-resize;left:-4px;left:calc(-.5 * var(--fc-event-resizer-thickness,8px));}.fc-direction-ltr .fc-h-event:not(.fc-event-selected) .fc-event-resizer-end,.fc-direction-rtl .fc-h-event:not(.fc-event-selected) .fc-event-resizer-start{cursor:e-resize;right:-4px;right:calc(-.5 * var(--fc-event-resizer-thickness,8px));}.fc-h-event.fc-event-selected .fc-event-resizer{top:50%;margin-top:-4px;margin-top:calc(-.5 * var(--fc-event-resizer-dot-total-width,8px));}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-start,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-end{left:-4px;left:calc(-.5 * var(--fc-event-resizer-dot-total-width,8px));}.fc-direction-ltr .fc-h-event.fc-event-selected .fc-event-resizer-end,.fc-direction-rtl .fc-h-event.fc-event-selected .fc-event-resizer-start{right:-4px;right:calc(-.5 * var(--fc-event-resizer-dot-total-width,8px));}.fc .fc-popover{position:absolute;z-index:9999;box-shadow:0 2px 6px rgba(0,0,0,.15);}.fc .fc-popover-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:3px 4px;}.fc .fc-popover-title{margin:0 2px;}.fc .fc-popover-close{cursor:pointer;opacity:.65;font-size:1.1em;}.fc-theme-standard .fc-popover{border:1px solid #ddd;border:1px solid var(--fc-border-color,#ddd);background:var(--fc-page-bg-color,#fff);}.fc-theme-standard .fc-popover-header{background:rgba(208,208,208,.3);background:var(--fc-neutral-bg-color,rgba(208,208,208,.3));}:root{--fc-daygrid-event-dot-width:8px;--fc-list-event-dot-width:10px;--fc-list-event-hover-bg-color:#f5f5f5;}.fc-daygrid-day-events:after,.fc-daygrid-day-events:before,.fc-daygrid-day-frame:after,.fc-daygrid-day-frame:before,.fc-daygrid-event-harness:after,.fc-daygrid-event-harness:before{content:"";clear:both;display:table;}.fc .fc-daygrid-body{position:relative;z-index:1;}.fc .fc-daygrid-day.fc-day-today{background-color:rgba(255,220,40,.15);background-color:var(--fc-today-bg-color,rgba(255,220,40,.15));}.fc .fc-daygrid-day-frame{position:relative;min-height:100%;}.fc .fc-daygrid-day-top{display:flex;flex-direction:row-reverse;}.fc .fc-day-other .fc-daygrid-day-top{opacity:.3;}.fc .fc-daygrid-day-number{position:relative;z-index:4;padding:4px;}.fc .fc-daygrid-day-events{margin-top:1px;}.fc .fc-daygrid-body-balanced .fc-daygrid-day-events{position:absolute;left:0;right:0;}.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events{position:relative;min-height:2em;}.fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom:1em;}.fc .fc-daygrid-event-harness{position:relative;}.fc .fc-daygrid-event-harness-abs{position:absolute;top:0;left:0;right:0;}.fc .fc-daygrid-bg-harness{position:absolute;top:0;bottom:0;}.fc .fc-daygrid-day-bg .fc-non-business{z-index:1;}.fc .fc-daygrid-day-bg .fc-bg-event{z-index:2;}.fc .fc-daygrid-day-bg .fc-highlight{z-index:3;}.fc .fc-daygrid-event{z-index:6;margin-top:1px;}.fc .fc-daygrid-event.fc-event-mirror{z-index:7;}.fc .fc-daygrid-day-bottom{font-size:.85em;padding:2px 3px 0;}.fc .fc-daygrid-day-bottom:before{content:"";clear:both;display:table;}.fc .fc-daygrid-more-link{position:relative;z-index:4;cursor:pointer;}.fc .fc-daygrid-week-number{position:absolute;z-index:5;top:0;padding:2px;min-width:1.5em;text-align:center;background-color:rgba(208,208,208,.3);background-color:var(--fc-neutral-bg-color,rgba(208,208,208,.3));color:grey;color:var(--fc-neutral-text-color,grey);}.fc .fc-more-popover .fc-popover-body{min-width:220px;padding:10px;}.fc-direction-ltr .fc-daygrid-event.fc-event-start,.fc-direction-rtl .fc-daygrid-event.fc-event-end{margin-left:2px;}.fc-direction-ltr .fc-daygrid-event.fc-event-end,.fc-direction-rtl .fc-daygrid-event.fc-event-start{margin-right:2px;}.fc-direction-ltr .fc-daygrid-week-number{left:0;border-radius:0 0 3px;}.fc-direction-rtl .fc-daygrid-week-number{right:0;border-radius:0 0 0 3px;}.fc-liquid-hack .fc-daygrid-day-frame{position:static;}.fc-daygrid-event{position:relative;white-space:nowrap;border-radius:3px;font-size:.85em;font-size:var(--fc-small-font-size,.85em);}.fc-daygrid-block-event .fc-event-time{font-weight:700;}.fc-daygrid-block-event .fc-event-time,.fc-daygrid-block-event .fc-event-title{padding:1px;}.fc-daygrid-dot-event{display:flex;align-items:center;padding:2px 0;}.fc-daygrid-dot-event .fc-event-title{flex-grow:1;flex-shrink:1;min-width:0;overflow:hidden;font-weight:700;}.fc-daygrid-dot-event.fc-event-mirror,.fc-daygrid-dot-event:hover{background:rgba(0,0,0,.1);}.fc-daygrid-dot-event.fc-event-selected:before{top:-10px;bottom:-10px;}.fc-daygrid-event-dot{margin:0 4px;box-sizing:content-box;width:0;height:0;border:4px solid #3788d8;border:calc(var(--fc-daygrid-event-dot-width,8px) / 2) solid var(--fc-event-border-color,#3788d8);border-radius:4px;border-radius:calc(var(--fc-daygrid-event-dot-width,8px) / 2);}.fc-direction-ltr .fc-daygrid-event .fc-event-time{margin-right:3px;}.fc-direction-rtl .fc-daygrid-event .fc-event-time{margin-left:3px;}.fc-v-event{border:1px solid #3788d8;border:1px solid var(--fc-event-border-color,#3788d8);background-color:#3788d8;background-color:var(--fc-event-bg-color,#3788d8);}.fc-v-event .fc-event-main{color:#fff;color:var(--fc-event-text-color,#fff);height:100%;}.fc-v-event .fc-event-main-frame{height:100%;display:flex;flex-direction:column;}.fc-v-event .fc-event-time{flex-grow:0;flex-shrink:0;max-height:100%;overflow:hidden;}.fc-v-event .fc-event-title-container{flex-grow:1;flex-shrink:1;min-height:0;}.fc-v-event .fc-event-title{top:0;bottom:0;max-height:100%;overflow:hidden;}.fc-v-event:not(.fc-event-start){border-top-width:0;border-top-left-radius:0;border-top-right-radius:0;}.fc-v-event:not(.fc-event-end){border-bottom-width:0;border-bottom-left-radius:0;border-bottom-right-radius:0;}.fc-v-event.fc-event-selected:before{left:-10px;right:-10px;}.fc-v-event .fc-event-resizer-start{cursor:n-resize;}.fc-v-event .fc-event-resizer-end{cursor:s-resize;}.fc-v-event:not(.fc-event-selected) .fc-event-resizer{height:8px;height:var(--fc-event-resizer-thickness,8px);left:0;right:0;}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-thickness,8px) / -2);}.fc-v-event:not(.fc-event-selected) .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-thickness,8px) / -2);}.fc-v-event.fc-event-selected .fc-event-resizer{left:50%;margin-left:-4px;margin-left:calc(var(--fc-event-resizer-dot-total-width,8px) / -2);}.fc-v-event.fc-event-selected .fc-event-resizer-start{top:-4px;top:calc(var(--fc-event-resizer-dot-total-width,8px) / -2);}.fc-v-event.fc-event-selected .fc-event-resizer-end{bottom:-4px;bottom:calc(var(--fc-event-resizer-dot-total-width,8px) / -2);}.fc .fc-timegrid .fc-daygrid-body{z-index:2;}.fc .fc-timegrid-axis-chunk > table,.fc .fc-timegrid-body,.fc .fc-timegrid-slots{position:relative;z-index:1;}.fc .fc-timegrid-divider{padding:0 0 2px;}.fc .fc-timegrid-body{min-height:100%;}.fc .fc-timegrid-axis-chunk{position:relative;}.fc .fc-timegrid-slot{height:1.5em;border-bottom:0;}.fc .fc-timegrid-slot:empty:before{content:" ";}.fc .fc-timegrid-slot-minor{border-top-style:dotted;}.fc .fc-timegrid-slot-label-cushion{display:inline-block;white-space:nowrap;}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-slot-label-cushion{padding:0 4px;}.fc .fc-timegrid-axis-frame-liquid{height:100%;}.fc .fc-timegrid-axis-frame{overflow:hidden;display:flex;align-items:center;justify-content:flex-end;}.fc .fc-timegrid-axis-cushion{max-width:60px;flex-shrink:0;}.fc-direction-ltr .fc-timegrid-slot-label-frame{text-align:right;}.fc-direction-rtl .fc-timegrid-slot-label-frame{text-align:left;}.fc-liquid-hack .fc-timegrid-axis-frame-liquid{height:auto;position:absolute;top:0;right:0;bottom:0;left:0;}.fc .fc-timegrid-col.fc-day-today{background-color:rgba(255,220,40,.15);background-color:var(--fc-today-bg-color,rgba(255,220,40,.15));}.fc .fc-timegrid-col-frame{min-height:100%;position:relative;}.fc-media-screen.fc-liquid-hack .fc-timegrid-col-frame{height:auto;position:absolute;top:0;right:0;bottom:0;left:0;}.fc-media-screen .fc-timegrid-cols{position:absolute;top:0;left:0;right:0;bottom:0;}.fc-media-screen .fc-timegrid-cols > table{height:100%;}.fc-media-screen .fc-timegrid-col-bg,.fc-media-screen .fc-timegrid-col-events,.fc-media-screen .fc-timegrid-now-indicator-container{position:absolute;top:0;left:0;right:0;}.fc .fc-timegrid-col-bg{z-index:2;}.fc .fc-timegrid-col-bg .fc-non-business{z-index:1;}.fc .fc-timegrid-col-bg .fc-bg-event{z-index:2;}.fc .fc-timegrid-col-bg .fc-highlight,.fc .fc-timegrid-col-events{z-index:3;}.fc .fc-timegrid-bg-harness{position:absolute;left:0;right:0;}.fc .fc-timegrid-now-indicator-container{bottom:0;overflow:hidden;}.fc-direction-ltr .fc-timegrid-col-events{margin:0 2.5% 0 2px;}.fc-direction-rtl .fc-timegrid-col-events{margin:0 2px 0 2.5%;}.fc-timegrid-event-harness{position:absolute;}.fc-timegrid-event-harness > .fc-timegrid-event{position:absolute;top:0;bottom:0;left:0;right:0;}.fc-timegrid-event-harness-inset .fc-timegrid-event,.fc-timegrid-event.fc-event-mirror,.fc-timegrid-more-link{box-shadow:0 0 0 1px #fff;box-shadow:0 0 0 1px var(--fc-page-bg-color,#fff);}.fc-timegrid-event,.fc-timegrid-more-link{font-size:.85em;font-size:var(--fc-small-font-size,.85em);border-radius:3px;}.fc-timegrid-event{margin-bottom:1px;}.fc-timegrid-event .fc-event-main{padding:1px 1px 0;}.fc-timegrid-event .fc-event-time{white-space:nowrap;font-size:.85em;font-size:var(--fc-small-font-size,.85em);margin-bottom:1px;}.fc-timegrid-event-short .fc-event-main-frame{flex-direction:row;overflow:hidden;}.fc-timegrid-event-short .fc-event-time:after{content:" - ";}.fc-timegrid-event-short .fc-event-title{font-size:.85em;font-size:var(--fc-small-font-size,.85em);}.fc-timegrid-more-link{position:absolute;z-index:9999;color:inherit;color:var(--fc-more-link-text-color,inherit);background:var(--fc-more-link-bg-color,#d0d0d0);cursor:pointer;margin-bottom:1px;}.fc-timegrid-more-link-inner{padding:3px 2px;top:0;}.fc-direction-ltr .fc-timegrid-more-link{right:0;}.fc-direction-rtl .fc-timegrid-more-link{left:0;}.fc .fc-timegrid-now-indicator-line{position:absolute;z-index:4;left:0;right:0;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color,red);border-width:1px 0 0;}.fc .fc-timegrid-now-indicator-arrow{position:absolute;z-index:4;margin-top:-5px;border-style:solid;border-color:red;border-color:var(--fc-now-indicator-color,red);}.fc-direction-ltr .fc-timegrid-now-indicator-arrow{left:0;border-width:5px 0 5px 6px;border-top-color:transparent;border-bottom-color:transparent;}.fc-direction-rtl .fc-timegrid-now-indicator-arrow{right:0;border-width:5px 6px 5px 0;border-top-color:transparent;border-bottom-color:transparent;}.fc-theme-standard .fc-list{border:1px solid #ddd;border:1px solid var(--fc-border-color,#ddd);}.fc .fc-list-empty{background-color:rgba(208,208,208,.3);background-color:var(--fc-neutral-bg-color,rgba(208,208,208,.3));height:100%;display:flex;justify-content:center;align-items:center;}.fc .fc-list-empty-cushion{margin:5em 0;}.fc .fc-list-table{width:100%;border-style:hidden;}.fc .fc-list-table tr > *{border-left:0;border-right:0;}.fc .fc-list-sticky .fc-list-day > *{position:sticky;top:0;background:var(--fc-page-bg-color,#fff);}.fc .fc-list-table thead{position:absolute;left:-10000px;}.fc .fc-list-table tbody > tr:first-child th{border-top:0;}.fc .fc-list-table th{padding:0;}.fc .fc-list-day-cushion,.fc .fc-list-table td{padding:8px 14px;}.fc .fc-list-day-cushion:after{content:"";clear:both;display:table;}.fc-theme-standard .fc-list-day-cushion{background-color:rgba(208,208,208,.3);background-color:var(--fc-neutral-bg-color,rgba(208,208,208,.3));}.fc-direction-ltr .fc-list-day-text,.fc-direction-rtl .fc-list-day-side-text{float:left;}.fc-direction-ltr .fc-list-day-side-text,.fc-direction-rtl .fc-list-day-text{float:right;}.fc-direction-ltr .fc-list-table .fc-list-event-graphic{padding-right:0;}.fc-direction-rtl .fc-list-table .fc-list-event-graphic{padding-left:0;}.fc .fc-list-event.fc-event-forced-url{cursor:pointer;}.fc .fc-list-event:hover td{background-color:#f5f5f5;background-color:var(--fc-list-event-hover-bg-color,#f5f5f5);}.fc .fc-list-event-graphic,.fc .fc-list-event-time{white-space:nowrap;width:1px;}.fc .fc-list-event-dot{display:inline-block;box-sizing:content-box;width:0;height:0;border:5px solid #3788d8;border:calc(var(--fc-list-event-dot-width,10px) / 2) solid var(--fc-event-border-color,#3788d8);border-radius:5px;border-radius:calc(var(--fc-list-event-dot-width,10px) / 2);}.fc .fc-list-event-title a{color:inherit;}.fc .fc-list-event.fc-event-forced-url:hover a{text-decoration:underline;}.fc-theme-bootstrap a:not([href]){color:inherit;}.fc-theme-bootstrap5 a:not([href]){color:inherit;text-decoration:inherit;}.fc-theme-bootstrap5 .fc-list,.fc-theme-bootstrap5 .fc-scrollgrid,.fc-theme-bootstrap5 td,.fc-theme-bootstrap5 th{border:1px solid var(--bs-gray-400);}.fc-theme-bootstrap5 .fc-scrollgrid{border-right-width:0;border-bottom-width:0;}.fc-theme-bootstrap5-shaded{background-color:var(--bs-gray-200);}