
.uab_loading_overlay {
	display: none;
	position:absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
	display: flex;
	justify-content: center;
	align-items: center;
	z-index:9999;
}

.uab_loading_container {
	background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    max-width: 400px;
	text-align: center;
}

.uab_filter_addon {
	position: relative; 
}

.uab_filter_addon .uab_hidden,
.uab_template_3.uab_hidden,
.uab_template_3 .uab_hidden {
	display: none !important;
} 
/* UAB WRAPPER */
.uab_template_3.uab_wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background: rgba(0, 0, 0, 0.35);
}

.uab_template_3 .uab_form_step[data-step="2"] {
	padding-left: 10px;
}
.uab_template_3 .uab_form_step[data-step="3"] {
	padding-left: 10px;
}

.uab_template_3 .uab_form_step[data-step="3"] .uab_form_step_title>div {
	padding-left:0px !important;

}

.uab_template_3 .uab_form_container {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #FFFFFF;
    padding: 30px;
    border-radius: .5rem;
    width: 50%;
    min-width: 760px;
}
/**/
.uab_template_3 .uab_step_heading {
	margin: 0;
	padding: 0;
}
.uab_template_3 .uab_center {
	text-align: center;
}
.uab_template_3 .uab_done {
	display: flex;
	font-size: small;
}

.uab_template_3 .uab_menu_label {
	font-weight: 600;
	padding-right:0.5em;
	white-space: nowrap;
}

.uab_template_3 .uab_close_button { 
	position: absolute;
    top: 5px;
    right: 5px;
    text-align: center;
    width: 21px;
    height: 21px;
    cursor: pointer;
    background-image: url(../../images/circle-xmark-regular.svg);
}

.uab_template_3 .uab_close_button

.uab_template_3 .uab_form_fieldset {
	padding-left: 11px
}

.uab_template_3 .uab_selection_menu { 
    padding: 0 10px;
	height: 100%;
	display: inline-block;
	vertical-align: top;
	border-right: 1px solid;
	overflow: hidden;
	border-bottom-left-radius: 10px;
}

.uab_template_3 .uab_form {
	vertical-align: top;
	height: 100%;
	overflow-y:scroll;
	overflow-x: hidden;
}

/* Webkit browsers custom scrollbar */
.uab_template_3 .uab_form::-webkit-scrollbar {
	width: 10px;
}

.uab_template_3 .uab_form::-webkit-scrollbar-track {
    border-radius: 10px;
}

.uab_template_3 .uab_form::-webkit-scrollbar-thumb {
    border-radius: 10px;
}

/* Webkit browsers custom scrollbar */

/* STEP TITLE + BACK AND CONTINUE BUTTONS */
.uab_template_3 .uab_form_step_title {
	display: flex;
	padding: 10px 0px;
}

.uab_template_3 .uab_form_step_title>div {
	flex: 1 1 100%;
}

.uab_template_3 .uab_form_step_title>div:nth-of-type(3) {
	text-align: right;
}

.uab_template_3 .uab_continue_button, 
.uab_template_3 .uab_back_button {
    text-wrap: nowrap;
    padding: 10px 20px;
    border-radius: 6px;
    border-width: 1px;
    border-style: solid;
    cursor: pointer;
}

.uab_template_3 .uab_continue_button:not(.step_done) {
	cursor: not-allowed;
	opacity: 0.35;
}

.uab_template_3 .uab_back_button {
	display: inline-block;
	margin-right: auto;
}

.uab_template_3 .uab_continue_button {
	display: inline-block;
	margin-left: auto;
}

.uab_template_3 .uab_continue_button.step_done {
	opacity: 1;
	cursor: pointer !important;
}
/* STEP TITLE + BACK AND CONTINUE BUTTONS */


/* PROGRESS BAR */
.uab_template_3 .uab_progressbar {
	display: flex;
	margin-bottom: 10px;
}

.uab_template_3 .uab_progressbar_step {
	flex-grow: 1;
	text-align: center;
	vertical-align: middle;
	font-size: small;
}

.uab_template_3 .uab_progressbar_uncompleted_step {
}
.uab_template_3 .uab_progressbar_current_step {
}
.uab_template_3 .uab_progressbar_completed_step {
}


/* MENU */
.uab_template_3 .uab_menu_entry {
	width: 100%;
	display: block;
	position: relative;
	border-bottom: 1px dotted;
	min-height: 35px;
}

.uab_template_3 .uab_menu_marker {
	position: absolute;
	top: 3px;
	right: 10px;
	width: 20px;
	height: 20px;
	border-radius: 20px;
}

.uab_template_3 .uab_menu_uncompleted {
	border-width: 3px;
    border-style: solid;
}

.uab_template_3 .uab_menu_completed {
	line-height: 1em;
	border-width: 2px;
    border-style: solid;
    text-align: center;
}

.uab_template_3 .uab_menu_current {
	border-width: 3px;
    border-style: solid;
}

.uab_template_3 .uab_menu_uncompleted>svg {
	opacity: 0;
}
.uab_template_3 .uab_menu_completed>svg {
	opacity: 1;
	width: 15px;	
}

.uab_template_3 .uab_menu_completed>svg>path {
	fill: white;
}


/* UAB CONTAINER */
.uab_template_3 .uab_container {
	display: grid;
	grid-template-columns: 30% 70%;
	height: calc(100% - 10px);
}


/* TIME TABLE */
.uab_template_3 .uab-calendar-container {
	display: flex;
}

.uab_template_3 .uab-calendar-closed-day {
	display: none;
}

.uab_template_3 .interval.unavailable {
}

.uab_template_3 .uab_w_full {
	width: 100%;
}

.uab_template_3 .prev-next-week-arrows {
	text-align: center;
}


.uab_template_3 .uab_unavailable_day,
.uab_template_3 .hour.disabled-true  {
    cursor: not-allowed !important;
    opacity: 0.35;
}


.uab_template_3 .time_selection>.days {
	display: grid;
  	grid-template-columns: repeat(7, 1fr);
  	gap: 10px;
  	text-align: center;
  	width: 100%;
}

.uab_template_3 .time_selection>.days>.uab_day {
	aspect-ratio: 1.5 / 1;
}
.uab_template_3 .time_selection>.hours>.hour {
	aspect-ratio: 3 / 1;
}

.uab_template_3 .uab_day_hour_number {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
} 
.uab_template_3 .time_selection>.hours {
	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	gap: 10px;
  	text-align: center;
  	width: 100%;
  	margin-top: 20px;
}
.uab_template_3 .time_selection>.days>.uab_day,
.uab_template_3 .time_selection>.hours>.hour {
    border-radius: 10px;
	border-width: 2px;
    border-style: solid;
    position: relative;
    background: white;
}

.uab_template_3 .time_selection>.days>.uab_day.selected,
.uab_template_3 .time_selection>.hours>.hour.selected {
	border-width: 2px;
    border-style: solid;
	opacity: 1 !important;
	filter: invert(100%);
}


.uab_template_3 .uab_flex {
	display: flex;
}

.uab_template_3 .uab_step_4_input {
    padding: 15px;
    border-radius: 6px;
    border-width: 1px;
    border-style: solid;
    -webkit-appearance: none;
  	-moz-appearance: none; 
  	appearance: none;
}
    
.uab_template_3 .uab_step_4_input:focus {
	outline: none;
	border-color: 1px solid ;
}    

.uab_template_3 .uab_payment {
	flex-grow: 1;
	text-align: center;
	position: relative;
	opacity: 0.3;
}

.uab_template_3 .opacity_1 {
	opacity: 1;
}
.uab_template_3 .uab_payment svg {
	width: 25%;
}

.uab_template_3 .uab_payment_title {
	position: absolute;
	width: 100%;
	top: 100%;
	
}

.uab_template_3 .uab_reservation_form  {
	position: absolute;
	top:0;
	left: 100%;
	background: white;
	width: 300px;
}
.uab_template_3 input {
	padding: 0;
	margin:0;
	height: unset;
}

.uab_template_3 .uab_pointer {
	cursor: pointer;
}

.uab_template_3 .uab_appointment_details {
}
.uab_template_3 .time_selection {
}

.uab_template_3 .hours_header {
    padding-top: 10px;
    text-align: center;
    }

/* MOBILE SETUP */
@media (max-width: 600px) {
	.uab_template_3 .uab_form_container {
		top:0;
		left:0;
		width: 0;
		width: 100%;
		height: 100%;
		min-width: 100%;
		transform: none;
		
	}
	.uab_template_3 .uab_container {  
		display: block;
	}
	
	.uab_template_3 .uab_selection_menu {
		display: none;
	}
	.uab_template_3 .uab_close_button {
	}
}