/*GRAVITY FORMS*/

/* IMPORTANT: Use Code Chest for specific forms */

/* Use custom class grid-column-1 ect... to set grid-column width in GF */
/*
.grid-column-1 {
    grid-column: span 1 !important;
    -ms-grid-column-span: 1 !important;
}
.grid-column-2 {
    grid-column: span 2 !important;
    -ms-grid-column-span: 2 !important;
}
.grid-column-3 {
    grid-column: span 3 !important;
    -ms-grid-column-span: 3 !important;
}
*/
/*css flex field (puts label on the left side of input)*/
/*
.flex-field {
	display:flex;
	align-items: center;
}
*/
input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {
	border:1px solid #000;
}
.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {	
	font-size:18px !important;
	padding:10px !important;
}
.gform_footer .gform_ajax_spinner {
	margin: 0 0 5px 15px !important;
    width: 24px;
    height: auto;
}
.gform-theme--foundation .gform_fields {
	row-gap:20px !important;
}
label.gfield_label.gform-field-label {
    font-size: 14px !important;
	display: flex;
    align-items: center;
	margin-bottom:10px;
}
.gform-theme--framework .gform-field-label>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform_editor legend.gform-field-label>span>.gfield_required:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
	color:#4a42a1 !important;
}
label .form-lable-optional {
	font-size:12px;
	color:#4a42a1;
}
.gform_validation_errors h2, .gform_validation_errors * {
	font-size:20px !important;
}

/* FORM FIELD TOOLTIPS */
.form-field-tooltip {
  position: relative !important;
  display: inline-block !important;
}
.form-field-tooltip:hover {
	cursor:pointer;
}
.form-field-tooltip .form-field-tooltip-text {
  visibility: hidden; /* Hidden by default */
  width: 240px;
  background-color: #4a42a1;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
  bottom: 30px; /* Position above the element */
  left: 50%;
  margin-left: -120px; /* Center the tooltip */
  padding: 10px;
  opacity: 0;
  transition: opacity 0.3s;
}

.form-field-tooltip .form-field-tooltip-text::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #4a42a1 transparent transparent transparent;
}

/* Override visibility for click-triggered display */
.form-field-tooltip .form-field-tooltip-text[style*="display: block"] {
  visibility: visible;
  opacity: 1;
}
#tooltip_phone:before {
	content:"";
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--!Font Awesome Free v5.15.4 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--%3E%3Cpath d='M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z'%3E%3C/path%3E%3C/svg%3E");	
	background-repeat:no-repeat;
	display:inline-block;
	width:14px;
	height:14px;
}

/*GP NESTED FORMS*/
.tingle-modal {
    background: rgba(51, 51, 51, 0.5) !important;
}
.gform-theme__no-reset--children {
    margin: 15px 0 !important;
    padding: 30px 0 !important;
	border-top: 1px solid #000 !important;
    border-bottom: 1px solid #000 !important;
}
.tingle-modal--overflow {    
    padding-top: 20px !important;
}
.gpnf-field {
	vertical-align:middle;
}
.gpnf-modal .gpnf-modal-header {
    font-size: 24px !important;
    background-color: transparent !important;
    font-family: BeVietnamPro-Bold, sans-serif, arial, inter;
    color: #4a42a1 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.gform_heading {
    display: none !important;
}
.tingle-btn {
    font-size: 16px !important;
    padding: 8px 20px !important;
    transition: background-color .4s ease !important;
}
button.gpnf-add-entry {
    background: #3985CB !important;
    font-weight: 700 !important;
}

.gpnf-modal .tingle-modal-box {
	height:100%;
	max-height:100%;
}
.gpb-booking-time-picker__slots {	
	overflow:scroll !important;
	max-height:300px;
	margin-bottom:100px;
	padding-bottom:30px;
}
.tingle-modal-box__content {
	overflow:scroll !important;
}
.gpb-booking-time-picker__slots, .tingle-modal-box__content {  
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

/* For WebKit browsers (Chrome, Safari, Opera) */
.gpb-booking-time-picker__slots::-webkit-scrollbar,
.tingle-modal-box__content::-webkit-scrollbar {
  display: none;
}
.tingle-modal--visible .tingle-modal-box__footer {
	position:absolute !important;
	width:100%;
}

/*ACCOUNT*/
.gf_login_form span.gfield_required.gfield_required_text {
    color: #4a42a1 !important;
    font-size: 12px;
    padding-left: 5px;
}
.gf_login_form .gfield {
    margin-bottom: 15px;
}

/*GRAVITY WIZ BOOKING FIELDS*/
.gfield--type-gpb_booking_time {
    margin: 0px 0 20px 0 !important;
    padding: 15px 0 !important;
    border-top: 1px solid #858585 !important;
    border-bottom: none !important;
}
svg.rdp-chevron {
    fill: #34c17b !important;
}
.rdp-day_button {
	color:#000 !important;
}
.rdp-selected .rdp-day_button {
	color:#34c17b !important;
	border:2px solid #34c17b !important; 
}
td.rdp-day button {
	cursor:pointer;
}
.rdp-disabled button {
	cursor:default;
}
td.rdp-day.rdp-today button {
    font-weight: 700;
    color: #34c17b !important;
}
.rdp-disabled {
    opacity: 0.3 !important;
}
.gpb-booking-time-picker__slots h4,
.gpb-booking-time-picker__header h4 {
    font-size: 18px;
}
.gpb-booking-time-picker__back {
	color: #34c17b !important;
}
span.gpb-booking-time-picker__slot-time {
	color:#000;
}
.tingle-modal__close {
	outline:none !important;
}
.tingle-modal__close .tingle-modal__closeIcon svg {
	padding: 14px 10px;
    background: #34c17b;
    border-radius: 6px;
}
button.gpb-booking-time-picker__slot.gpb-booking-time-picker__slot--selected {
	background:#34c17b !important;
	background-color:#34c17b !important;
}
button.gpb-booking-time-picker__slot.gpb-booking-time-picker__slot--selected > span {
	color:#fff !important;
}

/*Custom Radio / Checkboxes using Font Awesome Icons*/
.gform_wrapper .gfield_checkbox label, .gform_wrapper .gfield_radio label, .ginput_container_consent label {
	margin:0 !important;
}
.gform_wrapper .gfield_checkbox .gchoice,
.gform_wrapper .gfield_radio .gchoice {    
    padding: 0 10px 0 0;
}
.gform_wrapper .gfield_checkbox input[type=checkbox],
.gform_wrapper .gfield_radio input[type=radio],
.ginput_container_consent input[type=checkbox] {
  display:none !important;  
}
.gform_wrapper .gfield_checkbox label,
.gform_wrapper .gfield_radio label,
.ginput_container_consent label {
  font-size:14px !important;
  cursor:pointer;
  margin-bottom:5px !important;
}
.gform_wrapper .gfield_checkbox input[type=checkbox]:not(:checked)+label,  
.gform_wrapper .gfield_radio input[type=radio]:not(:checked)+label,
.gchoice_select_all, .gform_legacy_markup_wrapper ul.gfield_checkbox li input[type=checkbox]:checked+label, .gform_legacy_markup_wrapper ul.gfield_radio li input[type=radio]:checked+label { 
  font-weight:400 !important;  
}
.gform_wrapper .gfield_checkbox input[type=checkbox]+label:before,
.ginput_container_consent input[type=checkbox]+label:before,
.gform_wrapper .gfield_radio input[type=radio]+label:before {
	content:"";
    background-size: 18px;
    background-repeat: no-repeat;
    padding: 0 0 0 28px;
    background-position: 0 center;
}
.gform_wrapper .gfield_checkbox input[type=checkbox]:checked+label:before,
.ginput_container_consent input[type=checkbox]:checked+label:before,
.gfield-choice-input input[type=checkbox]:checked+label:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath d='M64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l320 0c8.8 0 16-7.2 16-16l0-320c0-8.8-7.2-16-16-16L64 80zM0 96C0 60.7 28.7 32 64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z'/%3E%3C/svg%3E");
}
.gform_wrapper .gfield_checkbox input[type=checkbox]:not(:checked)+label:before,
.ginput_container_consent input[type=checkbox]:not(:checked)+label:before,
.gfield-choice-input input[type=checkbox]:not(:checked)+label:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3C!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath d='M384 80c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16L48 96c0-8.8 7.2-16 16-16l320 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z'/%3E%3C/svg%3E");
}
.gform_wrapper .gfield_radio input[type=radio]:checked+label:before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-352a96 96 0 1 1 0 192 96 96 0 1 1 0-192z'/%3E%3C/svg%3E");
}
.gform_wrapper .gfield_radio input[type=radio]:not(:checked)+label:before {	
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3C!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath d='M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256z'/%3E%3C/svg%3E");			
}

@media screen and (max-width: 700px) {
	.gpb-booking-time-picker__header {
		display: flex !important;
		flex-direction: column;
		align-items: flex-start !important;
		text-align:left;
	}
}

@media screen and (max-width: 500px) {
	.rdp-day_button	{
		width:24px !important;
		height:24px !important;
	}
	.gpb-booking-time-picker__header {
		display:flex;
		flex-direction: column;
		padding-top:15px;
	}
}