 

.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_template_2 .uab_step_heading {
	margin: 0;
	padding: 0;
}


.uab_template_2 select, 
.uab_template_2 input {
	width: 100%;
	height: unset !important;
}
.uab_template_2 .uab_hidden {
	display: none !important;
}
.uab_template_2 .uab-calendar-container {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
}

.uab_template_2 .uab-calendar-day-container {
	font-size: small;
	text-align: center;
}

.uab_template_2 .uab-calendar-day-container:nth-child(1) {
	border-left: none;
}

.uab_template_2 .uab_buttons_container {
	display: block;
	height: 44px;
	margin: 10px;
}

.uab_template_2 .uab_back_button,
.uab_template_2 .uab_continue_button {
    text-wrap: nowrap;
    padding: 0px 20px;
    border-radius: 10px;
    border-width: 2px;
    border-style: solid;
    font-weight: 800;
    cursor: pointer;
}
.uab_template_2 .uab_back_button {
	float:left;
}
.uab_template_2 .uab_continue_button {
	float:right;
}


.uab_template_2 .inactive {
	cursor: not-allowed;
	opacity: 0.35;
}

.uab_template_2 .interval.unavailable {
	opacity: 0.35;
}

.uab_template_2 .step {
	display: block;
}
.uab_template_2 .step.active-step {
	display: block;
}


.uab_template_2 .category_thumb, .service_thumb {
	display: block;
	width: 100px;
	height: 100px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	
}


/* TEMPLATE 2 */
.uab_template_2 .uab_wrapper {
	border: 1px solid;
	position: relative;
}

.uab_template_2 .uab_progressbar {
	display: flex;
	gap: 2px;
}
.uab_template_2 .uab_progressbar_step {
	flex-grow:1;
	text-align: center;
	font-size: small;
	min-height: 3px;
}

.uab_template_2 .uab_progressbar_step:first-of-type {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px; 
}
.uab_template_2 .uab_progressbar_step:last-of-type {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px; 
}


.uab_template_2 .uab_3_grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 20px;
}

.uab_template_2 .uab_progressbar_step.uab_done_step {
}

.uab_template_2 .uab_progressbar_step.uab_current_step {
}

.uab_template_2 .uab_form_step {
	text-align: center; 
}
.uab_template_2 .uab_form_step[data-step="1"]>.uab_form_fieldset {
	width: 33%;
	display: inline-block;
}

.uab_template_2 .available_days {
	display: flex;
	column-gap:5px;
	text-align: center;
}
.uab_template_2 .available_days>div {
	flex-grow: 1;
}

.uab_template_2 .available_days>div>span {
	position:relative;
	display: block;
    border-radius: 50%;
    padding: 2px;
    text-align: center;
    border-width: 2px;
    border-style: solid;
    width: 16px;
    height: 16px;
    margin: auto;
    overflow: hidden;
    
}
.uab_template_2 .available_days>div>span.uab_disabled {
	overflow: hidden;
}
.uab_template_2 .available_days>div>span>svg {
	width: 12px;
	position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.uab_template_2 .client_available {
	display: flex;
	flex-wrap: wrap;
	font-size: small;
	column-gap: 10px;
	margin-top: 10px;
    border-top: 1px solid;
}

.uab_template_2 .client_available>div {
	flex: 1; 
}

.uab_template_2 .client_available select {
	display: block;
}
.uab_template_2 .calendar_cell_wrapper {
	border-radius:10px;
	display: block;
	margin: 5px 2px;
}
.uab_template_2 .interval {
	display: block;
    padding: 2px;
    border-width: 2px;
    border-style: solid;
    border-radius: 10px;
    cursor: pointer;
    background-color: white;
}

.uab_template_2.uab_wrapper {
	position:relative;
}

.uab_template_2 .uab_form.uab_content {
	display: flex;
	flex-direction: column;	
}

.uab_template_2 .uab_buttons_container {
	margin-top: auto;
}

.uab_template_2 .available {
	color: green;
}
.uab_template_2 .interval.unavailable {
    cursor: not-allowed !important;
}

.uab_template_2 .interval.selected {
	filter: invert(100%);
}

.uab_template_2 .uab_form_step[data-step="3"] .uab_form_fieldset {
	width: calc(100% - 40px);
	margin: auto;
}

.uab_template_2 .uab_flex {
	display: flex;
}

.uab_template_2 .uab_grid {
	display: grid;
} 
.uab_template_2 .uab_grid_3_columns {
	grid-template-columns: repeat(3, 1fr);
}

.uab_template_2 .uab_center {
	text-align: center;
}

.uab_template_2 .uab_payment {
	opacity: 0.3;
	text-align: center;
	position: relative;
}

.uab_template_2 .uab_payment svg{
	width: 25%;
	
}

.uab_template_2 .opacity_1 {
	opacity: 1;
}
.uab_template_2 .uab_first_name, 
.uab_template_2 .uab_last_name, 
.uab_template_2 .uab_email, 
.uab_template_2 .uab_phone {
	padding: 15px;
    border-radius: 6px;
    border-width: 1px;
    border-style: solid;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
}

.uab_template_2 .uab_form {
	padding: 10px;
    margin-top: 5px;
    border-radius: 6px;
}

.uab_template_2 div.uab_form_step[data-step="5"] {
	min-height: 400px;
	text-align: center;
}

.uab_template_2 select,
.uab_template_2 input[type="date"] {
	padding: 15px;
    border-radius: 6px;
    border-width: 1px;
    border-style: solid;
    width: 100%;
}
.uab_template_2 input[type="date"] {
    position: relative;
    padding-right:25px;
}

.uab_template_2 input[type="date"]::-webkit-calendar-picker-indicator {
		 	background: none;
            position: absolute;
            right: 0;
            top: 50%;
            width: 20px;
            height: 20px;
            transform: translateY(-50%);
            background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="%23000000" height="20px" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path  d="M19 3h-1V1h-2v2H8V1H6v2H5c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 18H5V9h14v12zm0-14H5V5h14v2zM7 11h5v5H7z"/></svg>');
            background-repeat: no-repeat;
            cursor: pointer;
	}

.uab_template_2 .client_available_from {
	max-width: calc(100% - 45px);
}


/* MOBILE SETUP */
@media (min-width: 601px) {
	.show_large {
		display: block;
	}
	.show_mobile {
		display: none;
	}
}
@media (max-width: 600px) {
	.uab_progressbar_step>span {
		display: none;
	}
	
	.client_available>div {
		flex: 1 1 100% !important; 
	}
	.show_large {
		display: none;
	}
	.show_mobile {
		display: block;
	}
	
	.uab-calendar-container {
		max-height: 400px;
		overflow-y: scroll;
	}
}