@import url('https://fonts.googleapis.com/css2?family=Mulish:wght@300;400;600;700&display=swap');
@import './variables.css';

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-family-base);
    direction: ltr;
    word-break: break-word;
    line-height: normal;
    text-align: start;
    background-color: var(--background);
    color: var(--primary-foreground);
}

body .bodyOverflow {
    min-height: 100vh;
    min-height: 100svh;
    min-height: 100dvh;
    background: var(--background);
}

svg {
    flex-shrink: 0;
}

.circleLoaderCenter {
    text-align: center;
}

.container {
    max-width: var(--container-width) !important;
}

.dropdown-toggle::after {
    margin: 0px 0px -2px 6px;
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--primary-foreground);
    text-decoration: none;
    background-color: var(--common-hover-bg);
}

textarea.form-control:focus {
    height: auto;
    border-color: #000;
    box-shadow: none;
}

select {
    background-image: url(../Icons/paymentDropdownDownArrow.svg) !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 15px) 50% !important;
    background-size: 25px 25px !important;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.whiteDropdown select {
    background-image: url(../chevron-down-white.png) !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 4px) 50% !important;
    background-size: 25px 25px !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 6px 30px 6px 6px;
    background-color: var(--primary-bg) !important;
}

.form-control:focus {
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.form-control:focus {
    border-color: var(--secondary-border) !important;
    box-shadow: none !important;
}

button:focus {
    box-shadow: none !important;
}

.form-control::placeholder {
    color: var(--primary-placeholder-foreground);
    opacity: 1;
    font-size: 16px !important;
}

.form-control {
    font-size: 16px !important;
    border: 1px solid var(--primary-border);
    background-color: transparent !important;
}

.pointerCursor {
    cursor: pointer;
}

.textAlignStart {
    text-align: start !important;
}

.textAlignEnd {
    text-align: end !important;
}

.flexShrinkNone {
    flex-shrink: 0;
}

.tooltipDropZoneLabelContainer {
    font-size: 18px;
    line-height: 28px;
    font-weight: 600;
    color: var(--primary-foreground);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 5px;
    text-align: start;
}


.tooltipLabelContainer {
    font-size: 16px;
    line-height: 26px;
    font-weight: 600;
    color: var(--primary-foreground);
    margin-bottom: 6px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.mt14 {
    margin-top: 14px;
}

.mt12 {
    margin-top: 12px;
}

/* common sub page design start */
.subPageMainContainer {
    padding-top: 63px;
}

.subPageContainer {
    min-height: 600px;
    background: var(--background-tertiary);
    padding-top: 48px;
    padding-bottom: 48px;
}

.subPageWrapper {
    display: grid;
    grid-template-columns: 310px 1fr;
    gap: 24px;
    grid-gap: 24px;
    align-items: flex-start;
}

.isFooterBottomSpace {
    padding-bottom: 92px;
}

/* common sub page design end */

.pageUrlFormInput {
    height: 44px;
}

.card-header button {
    padding: 0 !important;
}

.card-body {
    padding: 10px 20px !important;
}

/* header */

::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

/* Track */
::-webkit-scrollbar-track {
    box-shadow: inset 0 0 5px #dedede;
    border-radius: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--primary-bg);
    border-radius: 10px;
}

::-webkit-scrollbar-corner {
    width: 3px;
}

/* DropZone - Start */
.dzInputContainer {
    position: relative;
    font-family: var(--font-family-base);
}

.dz-hidden-input {
    overflow-x: hidden !important;
}

.redux-toastr .toastr.rrt-error {
    background-color: var(--common-cancel-foreground) !important;
}

.mapSection .gm-style-mtc {
    display: none !important;
}

.mapSection .gm-fullscreen-control {
    display: none !important;
}

.mapSection .gm-svpc {
    display: none !important;
}

.mapSection {
    position: relative;
}

.mapSection .link {
    position: absolute;
    right: 10px;
    display: block;
    top: 5px;
    background: var(--common-black-bg);
    color: var(--common-primary-white-foreground) !important;
    font-weight: 700;
    padding: 6px;
    font-size: 12px;
    z-index: 1;
    border-radius: 4px;
    cursor: pointer;
}

.mapSection .gm-control-active,
.mapSection .gm-control-active:focus {
    background: var(--common-white-bg) !important;
    outline: unset;
}

.gm-style {
    background-color: #a4ddf5 !important;
}

.redux-toastr .toastr.rrt-success {
    padding: 10px 0 !important;
}

.redux-toastr .toastr.rrt-error {
    padding: 10px 0 !important;
}

.redux-toastr .toastr .close-toastr {
    bottom: 20px !important;
    font-size: 24px !important;
    top: auto !important;
    right: 5px !important;
    opacity: 1.5 !important;
    color: var(--common-primary-white-foreground) !important;
    font-weight: 700 !important;
}

.react-switch-bg .toggleRightArrow {
    position: relative;
    left: -17px;
    z-index: 2;
    transition: all 0.1s ease;
}

.react-switch-bg .toggleLeftArrow {
    position: relative;
    right: -27px;
    z-index: 2;
    transition: all 0.1s ease;
    transform: rotate(180deg);
}

.badge-danger {
    line-height: 9px;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px #FCFDFF inset !important;
}

.bookingAccordion .card {
    border: inherit;
    background-color: transparent;
}

.bookingAccordion .card-header {
    padding: 0 0 0 5px;
    background-color: transparent;
    border-bottom: transparent;
}

.bookingAccordion td {
    border-top: inherit;
}

.bookingAccordion .btn-link {
    font-weight: 600;
    color: var(--primary-foreground);
    text-decoration: none;
    text-align: left;
}

.bookingAccordion .card-header {
    position: relative;
    display: grid;
    grid-template-columns: 100% auto;
    padding-left: 5px;
}

.bookingAccordion .btn-link svg {
    position: relative;
    top: -1px;
    left: 4px;
}

.bookingAccordion .accordion>.card {
    padding-left: 7px;
    overflow: visible;
}

.bookingAccordion .card-body {
    padding: 4px 0 0px 5px !important;
}

.bookingAccordion {
    padding-bottom: 10px;
}

.jobDetailAccordion .card-header button {
    width: 100%;
    color: var(--primary-foreground);
    text-decoration: none;
    text-align: left;
    display: flex;
}

.jobDetailAccordion .card-header {
    background-color: var(--primary-gray-bg);
    padding: 10px 15px;
}

.jobDetailAccordion .card-body {
    padding: 0 !important;
}

.jobDetailAccordion .card {
    background-color: transparent;
    box-shadow: 0px 2px 15px var(--primary-shadow);
    border-radius: 10px 0px !important;
    border: inherit;
}

.jobDetailAccordion {
    min-width: 400px;
    padding-right: 13px;
}

.jobDetailAccordion .accordion {
    margin: 5px 0 18px;
}

.ril__navButtons:focus {
    outline: none !important;
}

.form-control:disabled {
    background-color: var(--primary-disable) !important;
    cursor: not-allowed;
}

.printOnly {
    display: none;
}

.darkModeLoader {
    display: none;
}

.noResultBorder {
    border-bottom: unset !important;
}

.manageJobFlexContainer {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 15px;
    gap: 15px;
}

.directionLeft {
    direction: ltr;
}

.noMargin {
    margin: 0 !important;
}

.mb30 {
    margin-bottom: 30px;
}

.mb0 {
    margin-bottom: 0 !important;
}

.mb18 {
    margin-bottom: 18px !important;
}

.manageJobTextWrap {
    white-space: nowrap;
    word-break: break-word;
}

.defaultProfileIcon {
    background-size: 20% !important;
}

.imageUploadTooltipContainer {
    padding: 8px;
    text-align: center !important;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    background-color: var(--tooltip-bg) !important;
    border: 1px solid var(--tooltip-bg) !important;
    color: var(--tooltip-foreground) !important;
}

.imageUploadTooltipContainer.bs-popover-top>.arrow::after {
    border-top-color: var(--tooltip-bg) !important;
}

.imageUploadTooltipContainer.bs-popover-top>.arrow::before {
    border-top-color: var(--tooltip-bg) !important;
}

.imageUploadTooltipContainer.bs-popover-bottom>.arrow::after {
    border-bottom-color: var(--tooltip-bg) !important;
}

.imageUploadTooltipContainer.bs-popover-bottom>.arrow::before {
    border-bottom-color: var(--tooltip-bg) !important;
}

/* Auto suggest input design start */
.HomeAutosuggest input {
    width: 100%;
    padding: 9px 18px;
    background: var(--primary-input-bg);
    border: unset;
    border-radius: 6px 0 0 6px;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: var(--primary-foreground);
}

.HomeAutosuggest input::placeholder {
    color: var(--primary-placeholder-foreground)
}

.searchInputIconContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 14px 12px 14px;
    border-radius: 0 6px 6px 0;
    border: unset;
    background: var(--primary-bg);
    height: 44px;
    cursor: pointer;
}

.searchInputIconContainer img {
    display: inline-block;
    width: 18px;
    height: 18px;
}

.searchInputContainer {
    display: flex;
}

.searchInputContainer .HomeAutosuggest {
    width: 383px;
}

.HomeAutosuggest .react-autosuggest__suggestions-container {
    position: absolute;
    top: 44px;
    width: 100%;
    max-width: 100%;
    border: unset;
    max-height: 260px;
    background-color: var(--primary-input-bg);
    box-shadow: 0px 4px 10px 0px #0000001A;
    border-radius: 6px;
    z-index: 2;
    overflow-y: auto;
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list .react-autosuggest__suggestion {
    padding: 12px 18px;
    font-size: 14px;
    font-weight: 400;
    line-height: 26px;
    color: var(--primary-foreground);
    border-bottom: 1px solid var(--primary-border);
    cursor: pointer;
    text-align: start;
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list .react-autosuggest__suggestion.react-autosuggest__suggestion--highlighted {
    background-color: var(--common-hover-bg);
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list .react-autosuggest__suggestion.react-autosuggest__suggestion--highlighted:first-child {
    border-radius: 6px 6px 0 0;
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list .react-autosuggest__suggestion.react-autosuggest__suggestion--highlighted:last-child {
    border-radius: 0 0 6px 6px;
}

.HomeAutosuggest .react-autosuggest__suggestions-container .react-autosuggest__suggestions-list .react-autosuggest__suggestion:last-child {
    border-bottom: unset;
}

.HomeAutosuggest input:focus-visible,
.HomeAutosuggest input:focus {
    outline: unset;
    box-shadow: unset;
}

/* Auto suggest input design end */

/* Home page category slider design start */

.categorySliderWrapper,
.topCategorySliderWrapper {
    position: relative;
}

.categorySliderListCommonImg:hover::before {
    background: var(--category-hover);
}

.categorySliderListItem {
    cursor: pointer;
}

.categorySliderListItem:hover,
.categorySliderListItem:focus,
.allCategoryListItem:hover,
.allCategoryListItem:focus {
    text-decoration: unset !important;
}

/* Home page category slider design end */

/* Home page top category slider design start */
.topCategorySliderListItem {
    text-align: start;
}

.topCategorySliderListItem:hover .topCategorySliderListCommonImg img {
    box-shadow: 0px 6px 14px 0px var(--shadow-4);
}

/* home page top category slider design end */
/* header start*/
.homePageBody {
    padding-top: var(--frontPage-header-height);
    position: relative;
    z-index: 1;
}

.headerAfterNavigationButtonContainer .dropdown-toggle {
    background: var(--common-gray-bg);
    border: unset;
    outline: unset;
    box-shadow: unset;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 2px 12px 2px 2px !important;
    gap: 8px;
    grid-gap: 8px;
    cursor: pointer;
}

.headerAfterNavigationButtonContainer .dropdown-toggle::after {
    display: none;
}

.headerAfterNavigationButtonContainer .dropdown-menu {
    margin: 0px;
    padding: 0;
    border-radius: 6px;
    border: unset;
    box-shadow: 0px 4px 10px 0px #0000001A;
    background: var(--background);
}

.headerAfterNavigationButtonContainer .dropdown-item,
.headerAfterNavigationButtonContainer .dropdown-item:hover,
.headerAfterNavigationButtonContainer .dropdown-item:focus {
    padding: 12px 18px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 26px !important;
    color: var(--primary-foreground) !important;
    border-bottom: 1px solid var(--primary-border) !important;
    box-shadow: unset;
    outline: unset;
    text-align: start;
    cursor: pointer;
}

.headerAfterNavigationButtonContainer .dropdown-item {
    background-color: transparent;
}

.headerAfterNavigationButtonContainer .dropdown-item:hover,
.headerAfterNavigationButtonContainer .dropdown-item:focus,
.headerAfterNavigationButtonContainer .dropdown-item:active,
.headerAfterNavigationButtonContainer .dropdown-item.active:hover,
.headerAfterNavigationButtonContainer .dropdown-item.active:focus {
    background-color: var(--common-hover-bg) !important;
}

.headerAfterNavigationButtonContainer .dropdown-item:last-child {
    border-bottom: unset !important;
}

.headerAfterNavigationButtonContainer .dropdown-item.active {
    color: var(--primary-link-foreground) !important;
    text-decoration: unset;
    background-color: transparent !important;
}

/* header end */

.allCategoriesSearchInputContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 48px;
}

.allCategoriesSearchInputContainer .HomeAutosuggest {
    width: 500px;
}

.footerBgContainer {
    background-color: var(--background-tertiary);
}

.allCategoryList {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 30px;
    grid-gap: 30px;
}

/* current booking card start */

.dashboardCardSubImgContainer1 {
    background: var(--dashboard-card1-bg);
}

.dashboardCardSubImgContainer2 {
    background: var(--dashboard-card2-bg);
}

.dashboardCardSubImgContainer3 {
    background: var(--dashboard-card3-bg);
}

.BookingCardListContainer {
    display: grid;
    gap: 18px;
    grid-gap: 18px;
}

.BookingCardItemInfoPickUpLocation,
.BookingCardItemInfoDropLocation {
    position: relative;
    padding-left: 24px;
    margin-bottom: 6px;
}

.BookingCardItemInfoPickUpLocation::before,
.BookingCardItemInfoDropLocation::before {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    left: 8px;
    top: 10px;
    z-index: 1;
}

.BookingCardItemInfoPickUpLocation::before {
    background: var(--primary-border);
    border-radius: 50%;
}

.BookingCardItemInfoDropLocation::before {
    background: var(--primary-bg-black);
}

.BookingCardItemInfoPickUpLocation::after {
    content: "";
    position: absolute;
    background: var(--primary-border);
    width: 1px;
    height: calc(100% + 6px);
    left: 11px;
    top: 10px;
}

/* current booking card end */

/* prefix addon input start */

.cardSectionField {
    padding: 9px 18px 9px 46px;
    border: 1px solid var(--primary-border);
    border-radius: 6px;
    height: 44px;
    position: relative;
    background-color: var(--primary-input-bg);
}

.cardSectionField::after {
    content: '';
    position: absolute;
    top: 50%;
    background-repeat: no-repeat;
    width: 22px;
    height: 22px;
    z-index: 0;
    transform: translateY(-50%);
    left: 18px;
}

.cardSectionFieldOne::after {
    background-image: url('../paymentCard2.svg');
}

.cardSectionFieldTwo::after {
    background-image: url('/paymentCard1.svg');
}

.cardSectionFieldThree::after {
    background-image: url('/paymentCard3.svg');
}

.cardSectionField.StripeElement--focus {
    border-color: var(--secondary-border) !important;
    box-shadow: none !important;
}

.errorMessage {
    display: block;
    color: red;
    text-align: start;
}

.positionRelative {
    position: relative;
}

/* prefix addon input end */
.noResultSection {
    text-align: center;
    padding: 24px;
}

.noResultSection>img {
    width: 188px;
    height: 172px;
}

.noResultText {
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    color: var(--secondary-foreground);
    margin: 24px 0 0;
}

.manualListTab {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    border-bottom: 1px solid var(--primary-border) !important;
    margin-bottom: 24px !important;
}

.manualListTab .nav-link {
    font-size: 18px;
    line-height: 28px;
    font-weight: 600;
    color: var(--secondary-foreground) !important;
    border: unset !important;
    background-color: transparent !important;
    padding: 0 0 4px 0 !important;
}

.manualListTab .nav-link.active {
    color: var(--primary-link-foreground) !important;
    border-bottom: 2px solid var(--primary-link-foreground) !important;
}

/* pricing Accordion start */

.commonPricingAccordionHeading,
.commonPricingAccordionHeading:hover,
.commonPricingAccordionHeading:focus {
    background: unset;
    outline: unset !important;
    box-shadow: none !important;
    border: unset;
    padding: 0;
    width: 100%;
}

/* pricing Accordion end */
/* payment dropdown  start */
.paymentDropdownContainer .dropdown-toggle {
    background-color: transparent;
    outline: unset;
    box-shadow: unset;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--primary-border);
    padding: 8px 40px 8px 18px;
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
    color: var(--primary-foreground) !important;
    word-break: break-word;
    white-space: pre-wrap;
}

.paymentDropdownContainer .dropdown-toggle {
    background-image: url(../Icons/paymentDropdownDownArrow.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 15px) 50%;
}

.paymentDropdownContainer.show .dropdown-toggle {
    background-image: url(../Icons/paymentDropdownUpArrow.svg);
}

.paymentDropdownContainer .dropdown-toggle::after {
    display: none;
}

.paymentDropdownContainer .dropdown-menu {
    width: 100%;
    background: var(--background);
    border: 1px solid var(--primary-border) !important;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 10px 0px;
    border-radius: 6px;
    transform: translate(0px, 44px) !important;
    padding: 0 !important;
}

.paymentDropdownContainer .dropdown-item,
.paymentDropdownContainer .dropdown-item:hover,
.paymentDropdownContainer .dropdown-item:focus,
.paymentDropdownContainer .dropdown-item:active {
    padding: 12px 14px 12px 18px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 26px !important;
    color: var(--primary-foreground) !important;
    border-bottom: 1px solid var(--primary-border) !important;
    box-shadow: unset;
    outline: unset;
    text-align: start;
}

.paymentDropdownContainer .dropdown-item {
    background-color: transparent !important;
}

.paymentDropdownContainer .dropdown-item:hover,
.paymentDropdownContainer .dropdown-item:focus,
.paymentDropdownContainer .dropdown-item:active,
.paymentDropdownContainer .dropdown-item.active {
    background-color: var(--common-hover-bg) !important;
}

.paymentDropdownContainer .dropdown-item:last-child {
    border-bottom: unset !important;
}

/* payment dropdown  end */

.promoCodeSearchInputContainer {
    position: relative;
    flex-grow: 1;
}

.promoCodeSearchInputContainer input {
    padding: 9px 18px 9px 46px !important;
}

.commonListStyleSpacing {
    padding-left: 22px;
}

.profileImagesizeLoader .Loader__background {
    border-radius: 100px;
}

/* orderAccordion start */
.orderAccordionHeader {
    border: unset;
    padding: 0;
    background: transparent;
    display: flex;
    align-items: center;
    gap: 18px;
    grid-gap: 18px;
    width: 100%;
    padding: 12px;
}

.orderAccordionHeader,
.orderAccordionHeader:hover,
.orderAccordionHeader:focus {
    outline: 1px solid transparent;
    box-shadow: unset;
}

.custom-close-button {
    position: absolute;
    top: 6px;
    right: 6px;
    margin: 0 !important;
    padding: 0 !important;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--common-white-bg);
    border-radius: 50%;
    opacity: 1;
    box-shadow: unset;
    outline: unset;
    cursor: pointer;
}

.custom-nav-button,
.custom-nav-button:hover,
.custom-nav-button:focus {
    position: absolute;
    background: var(--common-white-bg);
    border: 1px solid var(--primary-border);
    width: 38px;
    height: 38px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    opacity: 1;
    box-shadow: unset;
    outline: unset;
    cursor: pointer;
}

.custom-navPrev-button {
    left: -14px;
}

.custom-navNext-button {
    right: -14px;
}

.custom-footer-count {
    color: var(--common-primary-white-foreground);
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    position: absolute;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    top: calc(100% + 6px);
    padding-bottom: 0;
    margin-bottom: 0;
    opacity: 1;
    background: transparent;
    transform: translateY(0);
    width: 100%;
}

/* orderAccordion end */
/* scheduleBooking modal popup start */

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

.scheduleBookingTimeContainer select:first-child {
    border-radius: 6px 0 0 6px !important;
}

.scheduleBookingTimeContainer select:last-child {
    border-radius: 0 6px 6px 0 !important;
}

.scheduleBookingTimeContainer select:nth-child(2) {
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
}

/* scheduleBooking modal popup end */

/* payment completed design start */
.paymentCompletedLottieImg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.paymentReviewStarContainer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.messagesItemsInfoUserRadius {
    border-radius: 0px 12px 12px 12px;
    background: var(--primary-gray-bg);
}

.messagesItemsInfoUserRadius::before {
    border-right: 46px solid var(--primary-gray-bg);
    border-bottom: 46px solid transparent;
    left: -23px;
}

.messagesItemsInfoUserRadius::after {
    left: -38px;
    border-top-right-radius: 30px;
    border-bottom-left-radius: 30px;
    background: var(--background);
    transform: rotate(6deg);
}

.messagesItemsInfoPartnerRadius {
    border-radius: 12px 0px 12px 12px;
    background: var(--chat-partner-bg);
}

.messagesItemsInfoPartnerRadius::before {
    border-left: 46px solid var(--chat-partner-bg);
    border-bottom: 46px solid transparent;
    right: -23px;
}

.messagesItemsInfoPartnerRadius::after {
    right: -38px;
    border-top-left-radius: 30px;
    border-bottom-right-radius: 30px;
    background: var(--background);
    transform: rotate(-6deg);
}

/* payment completed design end */

/* tip modal popup input design start */
.addTipsFormBox {
    max-width: 300px;
    margin: 0 auto;
}

.addTipsInputContainer .input-group {
    border-bottom: 1px solid var(--primary-border);
}

.addTipsInputContainer .input-group {
    display: flex;
    align-items: center;
    gap: 6px;
    grid-gap: 6px;
}

.addTipsInputContainer .input-group .input-group-prepend {
    flex-shrink: 0;
    margin-left: 0;
}

.addTipsInputContainer .input-group .input-group-prepend .input-group-text {
    padding: 0;
    border: unset;
    background: transparent;
    font-size: 28px;
    line-height: 38px;
    font-weight: 700;
    color: var(--primary-foreground);
    border-radius: 0;
}

.addTipsInputContainer input {
    font-size: 28px !important;
    font-weight: 700 !important;
    line-height: 38px !important;
    padding: 0 !important;
    border: unset !important;
    height: auto !important;
    border-radius: unset !important;
    color: var(--primary-foreground) !important;
    text-align: center !important;
    flex-grow: 1;
    background-color: transparent !important;
}

.addTipsInputContainer input:focus,
.addTipsInputContainer input:active {
    border-color: transparent !important;
    box-shadow: unset !important;
}

.react-images__frame {
    border-radius: 18px;
}

.paymentDropdownContainerReadonly .dropdown-menu,
.paymentDropdownContainerReadonly .dropdown-menu.show {
    display: none;
}

.paymentDropdownContainerReadonly .dropdown-toggle,
.paymentDropdownContainerReadonly.show .dropdown-toggle {
    background-image: none;
    cursor: not-allowed;
}

/* tip modal popup input design end */
/* safety Measure modal design end */
.safetyMeasuresModalContentBox h2 {
    font-size: 18px;
    line-height: 28px;
    color: var(--primary-foreground);
    text-align: start;
}

.safetyMeasuresModalContentBox h1 {
    font-size: 20px;
    line-height: 30px;
    color: var(--primary-foreground);
    text-align: start;
}

.safetyMeasuresModalContentBox h1,
.safetyMeasuresModalContentBox h2 {
    font-weight: 600;
    margin-bottom: 6px;
    margin-top: 0;
}

.safetyMeasuresModalContentBox p {
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    color: var(--primary-foreground);
    text-align: start;
}

.safetyMeasuresModalContentBox p {
    margin-bottom: 6px;
}

.safetyMeasuresModalContentBox ul,
.safetyMeasuresModalContentBox ol,
.safetyMeasuresModalContentBox menu {
    margin-bottom: 18px;
    padding-left: 24px;
}

.safetyMeasuresModalContentBox li,
.safetyMeasuresModalContentBox blockquote {
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 24px;
    font-weight: 400;
    color: var(--primary-foreground);
    text-align: start;
}

.safetyMeasuresModalContentBox .ql-size-large,
.safetyMeasuresModalContentBox .ql-size-huge {
    font-size: 16px;
    line-height: 26px;
}

.safetyMeasuresModalContentBox a,
.safetyMeasuresModalContentBox a:hover,
.safetyMeasuresModalContentBox a:focus {
    color: var(--primary-link-foreground) !important;
    text-decoration: unset;
    cursor: pointer;
}

/* safety Measure modal design end */

.btn:disabled {
    cursor: not-allowed;
}

.visibleHidden {
    visibility: hidden;
}

.providerStartContainer {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
}

.geosuggest__input {
    color: var(--primary-foreground) !important;
}

/* text Loading start */

.loadingTextContainer p {
    margin-bottom: 0;
}

.loadingTextWrapper {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.loadingTextWrapper .loadingTextSpan {
    animation-name: blink;
    animation-duration: 1.4s;
    animation-iteration-count: infinite;
    animation-fill-mode: both;
    width: 8px;
    height: 8px;
    display: inline-block;
    background: var(--primary-foreground);
    border-radius: 50%;
}

.loadingTextWrapper .loadingTextSpan:nth-child(2) {
    animation-delay: .2s;
}

.loadingTextWrapper .loadingTextSpan:nth-child(3) {
    animation-delay: .4s;
}

.commonAdditionPricingItemRtl>a {
    margin-left: 6px;
}

.categorySliderLoader {
    min-height: 210px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.topCategorySliderLoader {
    min-height: 350px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.viewCategoryLoaderContainer {
    padding: 220px 0;
}

@keyframes blink {
    0% {
        opacity: .2;
    }

    20% {
        opacity: 1;
    }

    100% {
        opacity: .2;
    }
}

.searchScrollLoaderContainer .loadingTextWrapper {
    justify-content: center;
    margin-top: 18px;
}

/* text Loading end */

.safariFailureInputWrapper {
    position: relative;
}

.failureDropDown .suggestItem {
    position: absolute;
    width: 100%;
    font-size: 16px;
    line-height: 26px;
    background: var(--primary-input-bg);
    padding: 8px 10px;
    cursor: pointer;
    border: 1px solid var(--primary-border) !important;
    border-top-width: 0 !important;
    border-radius: 0 0 6px 6px !important;
    top: 100%;
    margin-top: -2px;
    text-align: start;
    z-index: 2;
}


/* location input design start */

.customGeoSuggestInputListContainer {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 300px;
    padding: 0;
    margin-top: -1px;
    overflow-x: hidden;
    overflow-y: auto;
    list-style: none;
    z-index: 5;
    border: 1px solid var(--primary-border);
    border-top-width: 0;
    border-radius: 0 0 6px 6px;
    background: var(--primary-input-bg);
}

.customGeoSuggestInputListContainer::after {
    content: '';
    display: block;
    background-image: url(../powered_by_google.png);
    background-repeat: no-repeat;
    background-position: center left 98%;
    background-size: 80px 12px;
    width: 100%;
    height: 20px;
}

.customGeoSuggestInputListItem {
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    padding: 11px 10px;
    cursor: pointer;
    text-align: start;
    color: var(--primary-foreground);
}

.customGeoSuggestInputListItem:hover,
.customGeoSuggestInputListItem:focus {
    background: var(--common-hover-bg);
    color: var(--primary-foreground);
}

.viewCategoryLocationHourlySearch .customGeoSuggestInputContainer,
.viewCategoryLocationHourlySearch .safariFailureInputWrapper {
    position: relative;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    border: 1px solid var(--primary-border);
    border-radius: 6px;
    width: 100%;
    height: 44px;
    margin: 0;
    background-image: url(../Icons/locationPinIcon.svg);
    background-color: var(--primary-input-bg);
    background-position: calc(0% + 15px) 50%;
    background-size: 15px;
    background-repeat: no-repeat;
}

.viewCategoryLocationHourlySearch .customGeoSuggestInput,
.viewCategoryLocationHourlySearch .safariFailureInputWrapper .safariFailureGeoSuggestion {
    background: transparent;
    width: 100%;
    height: 100%;
    border: unset;
    padding: 9px 18px 9px 40px;
    border-radius: 4px;
    color: var(--primary-foreground);
    outline: unset;
    text-align: start;
    font-size: 16px;
    line-height: normal;
    font-weight: 400;
}

.viewCategoryLocationHourlySearch .customGeoSuggestInput:focus .viewCategoryLocationHourlySearch .safariFailureInputWrapper .safariFailureGeoSuggestion:focus {
    box-shadow: unset !important;
    outline: unset !important;
}

.commonLocationInput .customGeoSuggestInputContainer,
.commonLocationInput .safariFailureInputWrapper {
    position: relative;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    border: 1px solid var(--primary-border);
    border-radius: 6px;
    width: 100%;
    height: 46px;
    margin: 0;
    background-color: var(--primary-input-bg);
    text-align: start;
    outline: unset;
}


.commonLocationInput .customGeoSuggestInput,
.commonLocationInput .safariFailureInputWrapper .safariFailureGeoSuggestion {
    background: transparent;
    width: 100%;
    height: 100%;
    border: unset;
    padding: 9px 18px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 400;
    color: var(--primary-foreground);
    background-color: var(--primary-input-bg);
    box-shadow: unset;
    outline: unset;
    font-size: 16px;
    line-height: normal;
    font-weight: 400;
}

.commonLocationInput .customGeoSuggestInput:focus,
.commonLocationInput .safariFailureInputWrapper .safariFailureGeoSuggestion:focus {
    box-shadow: unset;
    outline: unset;
}


.adminSearchLocationContainer .customGeoSuggestInputContainer {
    position: relative;
}

.adminSearchLocationContainer .customGeoSuggestInputContainer .customGeoSuggestInputListItem {
    padding: 8px 10px;
}

.viewCategoryLocationHourlySearch .customGeoSuggestInput::placeholder,
.viewCategoryLocationHourlySearch .safariFailureInputWrapper .safariFailureGeoSuggestion::placeholder,
.commonLocationInput .customGeoSuggestInput::placeholder,
.commonLocationInput .safariFailureInputWrapper .safariFailureGeoSuggestion::placeholder {
    color: var(--primary-placeholder-foreground);
}

.customGeoSuggestInput:disabled {
    background-color: var(--primary-disable) !important;
    cursor: not-allowed;
}

/* location input design end */

/* custom check box design start */

.commonCustomCheckFlex {
    display: inline-flex !important;
    align-items: flex-start !important;
    gap: 8px;
    cursor: pointer;
    margin: 0;
}

.commonCustomCheckOuterFlex {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.commonCustomCheckOuterFlex>label:first-child {
    position: relative;
    top: 2px;
    flex-shrink: 0;
}

.checkBoxOuterLabel {
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
}

.commonCustomCheckWithoutLabelFlex {
    cursor: pointer;
    margin: 0;
}

.commonCustomCheckFlex>span:first-child {
    position: relative;
    top: 1px;
    flex-shrink: 0;
}

.preferredProviderCustomCheckFlex>span:first-child {
    top: 2px;
}
.preferredProviderCustomCheckFlex{
    font-size: 16px;
    line-height: 24px;
}

.commonCustomCheckBox {
    border: 1px solid var(--tertiary-border) !important;
    width: 22px !important;
    height: 22px !important;
    position: relative;
    border-radius: 5px !important;
    cursor: pointer;
}

.commonCustomCheckBox .checkBoxChecked {
    position: absolute;
    inset: -1px;
    background-color: var(--primary-bg);
    border-radius: inherit;
    background-size: 54%;
    background-position: center !important;
    background-repeat: no-repeat;
    background-image: url(data:image/svg+xml;utf8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTYuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjUxMnB4IiBoZWlnaHQ9IjUxMnB4IiB2aWV3Qm94PSIwIDAgNzguMzY5IDc4LjM2OSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNzguMzY5IDc4LjM2OTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8Zz4KCTxwYXRoIGQ9Ik03OC4wNDksMTkuMDE1TDI5LjQ1OCw2Ny42MDZjLTAuNDI4LDAuNDI4LTEuMTIxLDAuNDI4LTEuNTQ4LDBMMC4zMiw0MC4wMTVjLTAuNDI3LTAuNDI2LTAuNDI3LTEuMTE5LDAtMS41NDdsNi43MDQtNi43MDQgICBjMC40MjgtMC40MjcsMS4xMjEtMC40MjcsMS41NDgsMGwyMC4xMTMsMjAuMTEybDQxLjExMy00MS4xMTNjMC40MjktMC40MjcsMS4xMi0wLjQyNywxLjU0OCwwbDYuNzAzLDYuNzA0ICAgQzc4LjQ3NywxNy44OTQsNzguNDc3LDE4LjU4Niw3OC4wNDksMTkuMDE1eiIgZmlsbD0iI0ZGRkZGRiIvPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+CjxnPgo8L2c+Cjwvc3ZnPgo=) !important;
}

/* custom check box design end */

/* loader button start */

.loaderButtonFlex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}

.doubleBtnFlexEnd {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    flex-wrap: wrap;
}

.singleFlexEndBtn {
    display: flex;
    justify-content: flex-end;
}

/* loader button end */

/* View booking details page table start */

.viewBookingTableContainer tbody td {
    border-top: 1px solid var(--primary-border);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--primary-foreground);
    text-align: start;
    min-width: 200px;
}

/* View booking details page table end */

/* Table design start */
.tableOuterContainer,
.viewBookingInnerTableOuterContainer {
    border: 1px solid var(--primary-border);
    overflow-x: auto;
    position: relative;
    overflow-y: auto;
    border-radius: 6px;
    min-height: 115px;
    max-height: 500px;
}

.viewBookingInnerTableOuterContainer {
    border-radius: 0 0 6px 6px;
    border-top: 0;
}

.tableContainer,
.viewBookingInnerTableContainer {
    border: 0;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
    width: 100%;
}


.tableContainer thead th,
.viewBookingInnerTableContainer thead th {
    background: var(--primary-gray-bg) !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 26px;
    border: unset !important;
    position: sticky;
    top: 0;
    z-index: 1;
}

.tableContainer thead th:first-child {
    border-top-left-radius: 6px;
}

.tableContainer thead th:last-child {
    border-top-right-radius: 6px;
}

.tableContainer tbody td,
.tableContainer thead th,
.viewBookingInnerTableContainer tbody td,
.viewBookingInnerTableContainer thead th {
    padding: 14px 18px;
    min-width: 150px;
    text-align: center;
    vertical-align: middle;
    color: var(--primary-foreground);
}

.tableContainer tbody td,
.viewBookingInnerTableContainer tbody td {
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    border-top: 1px solid var(--primary-border);
}

.tableContainer tbody td.tableNoRecordCel,
.viewBookingInnerTableContainer tbody td.tableNoRecordCel {
    text-align: center;
    padding: 20px;
    font-size: 26px;
    font-weight: 600;
    line-height: 34px;
}

.tableLargeHeading {
    min-width: 220px;
}

.commonTableTopSearchBox {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
    gap: 24px;
    grid-gap: 24px;
    flex-wrap: wrap;
}

.searchInput {
    width: 100%;
    min-width: 320px;
    max-width: 320px;
}

.commonTableTopBtnGrp {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 24px;
    flex-wrap: wrap;
}

.commonTableTopExportLink {
    display: inline-block;
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--primary-link-foreground);
    gap: 3px;
}

.commonTableTopExportLink,
.commonTableTopExportLink:hover,
.commonTableTopExportLink:focus {
    color: var(--primary-link-foreground);
    text-decoration: unset;
    outline: none;
    cursor: pointer;
}

.defaultScrollHidden {
    overflow: hidden;
}

/* common modal popup start */

.commonModalContainer {
    max-width: 470px;
    margin-top: 88px;
}

.commonModalContainer .modal-content {
    border-radius: 18px;
    background: var(--modal-bg);
    box-shadow: 0px 4px 19px 0px var(--modal-shadow);
}

.commonModalHeader {
    padding: 24px 24px 0;
    border-bottom: unset;
    border-radius: 0;
    text-align: start;
}

.commonModalHeader .modal-title {
    max-width: calc(100% - 25px);
    width: 100%;
}

.commonModalTitle {
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    color: var(--primary-foreground);
}

.commonModalBody {
    padding: 18px 24px 24px;
    text-align: start;
}

.commonModalHeader .close,
.commonModalHeader .close:hover,
.commonModalHeader .close:focus {
    position: absolute;
    top: 6px;
    right: 6px;
    margin: 0;
    padding: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--common-white-bg);
    background-image: url('../Icons/modalCloseIcon.svg');
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    opacity: 1;
    box-shadow: unset;
    outline: unset;
}

.commonModalHeader .close:not(:disabled):not(.disabled):focus,
.commonModalHeader .close:not(:disabled):not(.disabled):hover {
    opacity: 1 !important;
}

.commonModalHeader .close span[aria-hidden="true"] {
    display: none;
}

.buttonGroupContainer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
    grid-gap: 18px;
    flex-wrap: wrap;
}

.buttonGroupDivider {
    padding-top: 24px;
    border-top: 1px solid var(--primary-border);
    margin-top: 24px;
}

.loaderFlex {
    display: flex !important;
    align-items: center;
    gap: 3px;
}

.commonModalHeaderLogoContainer {
    display: flex;
    align-items: center;
    gap: 24px;
    grid-gap: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--primary-border);
    padding-right: 24px;
}

.commonModalHeaderLogo {
    position: relative;
    width: 75px;
    height: 75px;
    border-radius: 50%;
    flex-shrink: 0;
}

.commonModalHeaderLogo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
}

.visibleHidden {
    visibility: hidden;
}

/* common modal popup end */
/* Table design end */

/* admin header start */

.adminHeaderDropdownMenu .dropdown-toggle {
    padding: 0;
}

.adminHeaderDropdownMenu .dropdown-toggle::after {
    display: none;
}

.adminHeaderDropdownMenu .dropdown-menu {
    top: 6px !important;
    padding: 0;
    background-color: var(--primary-input-bg);
    border: 1px solid var(--primary-border) !important;
}

.adminHeaderDropdownMenu .dropdown-menu .dropdown-item:first-child {
    border-bottom: 1px solid var(--primary-border);
}

.adminHeaderDropdownMenu .dropdown-item,
.adminHeaderDropdownMenu .dropdown-item:hover,
.adminHeaderDropdownMenu .dropdown-item:focus {
    padding: 10px;
    color: var(--primary-foreground);
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
}

.adminHeaderDropdownMenu .dropdown-item:hover {
    background-color: var(--common-hover-bg) !important;
}

/* admin header end */

/* preview page design start */

.contentPageWrapper {
    min-height: 600px;
}

/* preview page design end */

/* page loader center start */

.bodyOverflow .Loader__background {
    z-index: 1 !important;
    height: calc(100vh - 102px) !important;
    background-color: transparent !important;
}

.dropzoneUploaderContainer .Loader__background {
    height: 100% !important;
}

.dropzoneUploaderContainer .Loader__background {
    height: 100% !important;
}

.userDropzoneLoaderContainer img {
    width: 75px !important;
    height: 75px !important;
}

/* page loader center end */

/* manual booking accordion design start */

.commonAccordionContainer {
    border: 1px solid var(--primary-border);
    border-radius: 6px;
    background: var(--background);
}

.commonAccordionHeading,
.commonAccordionHeading:hover,
.commonAccordionHeading:focus {
    padding: 14px 18px;
    border: unset;
    outline: unset;
    box-shadow: unset;
    background: transparent;
    display: flex;
    align-items: center;
    width: 100%;
    font-size: 16px;
    line-height: 26px;
    font-weight: 700;
    color: var(--primary-foreground);
    justify-content: space-between;
}

.accordionArrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
}

.accordionArrowDown {
    transform: rotate(0);
    transition: all 0.4s linear;
}

.accordionArrowUp {
    transform: rotate(-180deg);
    transition: all 0.4s linear;
}

.commonAccordionBody {
    border-top: 1px solid var(--primary-border);
}

.commonAccordionBodyWrapper {
    padding: 18px;
}

.commonBookingSwitchContainer {
    display: flex;
    align-items: center;
    background: var(--background-tertiary);
    gap: 12px;
    grid-gap: 12px;
    padding: 12px;
    justify-content: center;
    margin-bottom: 18px;
    margin-top: 18px;
    font-size: 16px;
    line-height: 26px;
    font-weight: 600;
    border-radius: 6px;
}

.commonBookingSwitchContainer span:first-child,
.commonBookingSwitchContainer span:last-child {
    width: 100%;
    display: inline-block;
    color: var(--primary-foreground);
    max-width: 50%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
}

.commonBookingSwitchContainer span:first-child {
    text-align: end;
}

.commonBookingSwitchContainer span:last-child {
    text-align: start;
}

.commonBookingSwitchContainer .react-switch-handle {
    box-shadow: unset !important;
}

.commonBookingSwitchContainer .react-switch-bg {
    background: var(--primary-border) !important;
    border: 1px solid var(--tertiary-disable);
}

/* manual booking accordion design end */

.actionLinkText {
    color: var(--primary-link-foreground) !important;
    cursor: pointer;
}

.actionLinkText:hover,
.actionLinkText:focus {
    color: var(--primary-link-foreground);
    text-decoration: underline;
    cursor: pointer;
}

.commonButtonContainer {
    display: flex;
    justify-content: flex-end;
    column-gap: 18px;
    row-gap: 18px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 24px;
}

.oneColumnGrid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
}

.twoColumnGrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 24px;
}

.threeColumnGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px 24px;
}

/* Add on field design start */

.prefixAddonBtn,
.suffixAddonBtn {
    padding: 6px 12px;
    background: var(--primary-bg);
    color: var(--common-primary-white-foreground);
    border: 1px solid var(--primary-bg);
}

.suffixInputAddonContainer .form-control {
    border-right-width: 0 !important;
}

.prefixInputAddonContainer .form-control {
    border-left-width: 0 !important;
}

.noColorInputAddonContainer .input-group-prepend {
    margin-right: 0;
}

.noColorInputAddonContainer .prefixAddonBtn,
.noColorInputAddonContainer .suffixAddonBtn {
    background: var(--primary-disable);
    border: 1px solid var(--primary-border);
}

/* Add on field design end */

/* custom radio button design start */

.customRadioBtnContainer {
    position: relative;
}

.customRadioBtnContainer input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.customRadioCheckDot,
.customRadioCheckTick {
    width: var(--customRadioWidth);
    height: var(--customRadioHeight);
    position: relative;
    background: transparent;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.customRadioCheckDot {
    border: 1px solid var(--primary-bg);
}

.customRadioCheckTick {
    border: 1px solid var(--checkbox-border);
}

.customRadioCheckDot::after,
.customRadioCheckTick::after {
    content: "";
    position: absolute;
    width: calc(var(--customRadioWidth) - 8px);
    height: calc(var(--customRadioWidth) - 8px);
    border-radius: 50%;
    display: none;
}

.customRadioBtnContainer input:checked~.customRadioCheckDot::after,
.customRadioBtnContainer input:checked~.customRadioCheckTick::after {
    display: block;
}

.customRadioBtnContainer input:checked~.customRadioCheckDot::after {
    background: var(--primary-bg);
}

.customRadioBtnContainer input:checked~.customRadioCheckTick {
    background: var(--primary-bg);
    border: 1px solid var(--primary-bg);
}

.customRadioBtnContainer input:checked~.customRadioCheckTick::after {
    background-image: url('../Icons/defaultRadioTickIcon.svg');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* custom radio button design end */

/* skeleton design start */
.commonSkeletonBox {
    position: relative;
    width: 100%;
    background-color: var(--skeleton-primary-bg);
    overflow: hidden;
}

.commonSkeletonBox::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(277, 255, 255, .3), rgba(277, 255, 255, 0));
    transform: translate(-100%);
    z-index: 1;
    animation: loading 2s cubic-bezier(.4, 0, .6, 1) infinite;
}

@keyframes loading {
    100% {
        transform: translate(100%);
    }
}

/* skeleton design end */

.cancelReasonLabel {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 6px;
    grid-gap: 6px;
    font-size: 14px;
    font-weight: 600;
    line-height: 24px;
    color: var(--primary-foreground);
    margin-bottom: 0 !important;
}

.cancelReasonLabel input,
.cancelReasonLabel .customRadioCheckTick {
    top: 3px;
    flex-shrink: 0;
}


.siteAdminPrimaryHeading {
    font-weight: 700;
    font-size: 24px;
    color: var(--primary-foreground);
    padding-bottom: 24px;
    margin: 0;
    text-align: start;
}

.siteAdminSecondaryHeading {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--primary-foreground);
    text-align: start;
    margin-top: 0;
}

.preferredProviderCardWrapper {
    display: grid;
    gap: 18px;
    max-height: 400px;
    overflow-y: auto;
}

.preferredProviderImageWrapper .commonCustomCheckBox {
    position: absolute;
    left: 4px;
    top: 4px;
    background: white;
}