.ui-droppable-hover {
    border: 1px dotted #000;
    background-color: #fcc !important;
    opacity: .5
}

.nav-tabs.nav-tabs-line.nav-tabs-space-xl .nav-item {
    margin-right: 10px !important
}

.kt-datatable.kt-datatable--default>.kt-datatable__table>.kt-datatable__body .kt-datatable__row>.kt-datatable__cell:first-child,
.kt-datatable.kt-datatable--default>.kt-datatable__table>.kt-datatable__foot .kt-datatable__row>.kt-datatable__cell:first-child,
.kt-datatable.kt-datatable--default>.kt-datatable__table>.kt-datatable__head .kt-datatable__row>.kt-datatable__cell:first-child {
    padding-left: 10px
}

.kt-datatable.kt-datatable--default>.kt-datatable__table>.kt-datatable__body .kt-datatable__row>.kt-datatable__cell:first-child {
    padding-left: 5px
}

.hover-animate {
    transition: all .2s ease-in-out
}

.hover-animate:hover,
.hover-animate:focus {
    transform: translate3d(0, -2px, 0)
}

.kt-datatable.kt-datatable--default>.kt-datatable__table>.kt-datatable__body .kt-datatable__row>.kt-datatable__cell:first-child {
    padding-left: 0
}

.fixed-column {
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    background-color: #fff;
    z-index: 2
}

.add_booking {
    opacity: 0;
    max-height: 20px
}

.add_booking:hover {
    opacity: 1;
    max-height: 20px
}

.ac_title {
    display: flex;
    flex-direction: column-reverse;
    background-color: #fff;
    cursor: pointer;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 152px;
    z-index: 2
}

.ac_empty {
    cursor: pointer;
    display: block;
    vertical-align: bottom;
    width: 50px;
    text-align: center;
    color: grey;
    background-color: #c7ff50;
    border-radius: 3px
}

.ac_minus {
    cursor: pointer;
    display: block;
    vertical-align: bottom;
    width: 50px;
    text-align: center;
    color: grey;
    background-color: pink;
    border-radius: 3px
}

.ac_overbooking {
    cursor: pointer;
    display: block;
    vertical-align: bottom;
    width: 50px;
    text-align: center;
    color: #fff;
    background-color: red;
    border-radius: 3px
}

.ac_booking {
    opacity: 1;
    display: block;
    border-radius: 3px;
    cursor: pointer;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.ac_transparrent {
    display: block;
    border-radius: 3px;
    cursor: pointer;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: transparent;
    min-height: 22px
}

.ac_row {
    display: flex;
    flex-wrap: nowrap
}

.ac_table_responsive {
    overflow: scroll;
    border: none
}

.ac_table_responsive table {
    border-spacing: 0
}

.ac_table_responsive th {
    background: #fff;
    background-color: #fff;
    position: sticky;
    top: 0;
    z-index: 2
}

.ac_table_responsive tr td:first-child {
    background-color: #fff;
    z-index: 2
}

.ac_table_responsive th:nth-child(1),
.ac_table_responsive td:nth-child(1) {
    position: sticky;
    left: 0
}

.ac_table_responsive .tooltip {
    pointer-events: none;
    position: absolute;
    min-width: 450px
}

.fa-arrow-left:before {
    content: "<" !important
}

.fa-arrow-right:before {
    content: ">" !important
}

.flaticon2-left-arrow:before {
    content: "<"
}

.flaticon2-right-arrow:before {
    content: ">"
}

@media print {

    .no-print,
    .no-print * {
        display: none !important
    }
}

.swal2-validation-message {
    display: none
}

@media (max-width: 576px) {
    .card-columns {
        -webkit-column-count: 1 !important;
        -moz-column-count: 1 !important;
        column-count: 1 !important;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1
    }

    .card-columns .card {
        display: inline-block;
        width: 100%
    }
}

@media (min-width: 576px) {
    .card-columns {
        -webkit-column-count: 2 !important;
        -moz-column-count: 2 !important;
        column-count: 2 !important;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1
    }

    .card-columns .card {
        display: inline-block;
        width: 100%
    }
}

@media (min-width: 1536px) {
    .card-columns {
        -webkit-column-count: 3 !important;
        -moz-column-count: 3 !important;
        column-count: 3 !important;
        -webkit-column-gap: 1.25rem;
        -moz-column-gap: 1.25rem;
        column-gap: 1.25rem;
        orphans: 1;
        widows: 1
    }

    .card-columns .card {
        display: inline-block;
        width: 100%
    }
}

.skeleton-box {
    display: inline-block;
    height: 1em;
    position: relative;
    overflow: hidden;
    background-color: #dddbdd;
    -webkit-animation: shimmer 2s infinite;
    animation: shimmer 2s infinite
}

.skeleton-box::after {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateX(-100%);
    background-image: linear-gradient(90deg, rgba(#fff, 0) 0, rgba(#fff, 0.2) 20%, rgba(#fff, 0.5) 60%, rgba(#fff, 0));
    animation: shimmer 2s infinite;
    content: ''
}

@keyframes shimmer {
    100% {
        transform: translateX(100%)
    }
}

body {
    padding: 0 !important
}

.ui-menu {
    border: none !important
}

#ui-id-1 {
    z-index: 99999
}

ul.ui-autocomplete {
    z-index: 999999
}

.kt-aside .kt-aside-menu {
    margin: 0 0 !important
}

.kt-aside-menu .kt-menu__nav {
    padding: 0 0 !important
}

.kt-login-v2 {
    background-color: #fff
}

.kt-login-v2 .kt-login-v2__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    padding: 2rem 3rem
}

.kt-login-v2 .kt-login-v2__head .kt-login-v2__logo>a {
    display: inline-block
}

.kt-login-v2 .kt-login-v2__head .kt-login-v2__signup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.kt-login-v2 .kt-login-v2__head .kt-login-v2__signup>span {
    margin-bottom: 0;
    color: #9d9fb1;
    font-size: 1.1rem;
    padding-right: .5rem;
    font-weight: 500
}

.kt-login-v2 .kt-login-v2__head .kt-login-v2__signup>a {
    font-weight: 500;
    font-size: 1.1rem
}

.kt-login-v2 .kt-login-v2__body {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 3rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper {
    width: 50%;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container {
    width: 100%;
    max-width: 500px;
    -webkit-box-shadow: 0 0 80px 0 rgba(77, 84, 124, .09);
    box-shadow: 0 0 80px 0 rgba(77, 84, 124, .09);
    border-radius: .6rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__title {
    text-align: center
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__title>h3 {
    color: #636576;
    margin-top: 3rem;
    font-size: 1.5rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__form {
    padding: 3rem 4rem 2rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__form .form-control {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    padding-left: 0
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    padding: 0;
    margin-top: 3rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__actions a {
    display: inline-block
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__actions a span {
    font-size: 1rem;
    font-weight: 500
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__actions .btn {
    padding: 1rem 3rem;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 500
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__desc {
    text-align: center;
    color: #a5a7bb;
    font-size: 1.2rem;
    font-weight: 400
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 2rem 4rem 3rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    font-weight: 400;
    font-size: 1rem;
    padding: 1rem 0;
    color: #fff
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a>i {
    font-size: 1.2rem;
    color: rgba(255, 255, 255, .5);
    padding-right: .4rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a:not(:first-child):not(:last-child) {
    margin: 0 2rem
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-facebook {
    background-color: #3b5998
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-facebook:hover {
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease;
    background-color: #324c82
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-twitter {
    background-color: #1da1f2
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-twitter:hover {
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease;
    background-color: #0d92e3
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-google {
    background-color: #ea4335
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a.btn-google:hover {
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease;
    background-color: #e72919
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__image {
    width: 50%;
    margin-left: 8rem;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.kt-login-v2 .kt-login-v2__body .kt-login-v2__image>img {
    width: 100%;
    max-width: 500px
}

.kt-login-v2 .kt-login-v2__footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 2rem 3rem
}

.kt-login-v2 .kt-login-v2__footer .kt-login-v2__info>a {
    font-weight: 500;
    font-size: 1rem;
    color: #a5a7bb
}

.kt-login-v2 .kt-login-v2__footer .kt-login-v2__link {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.kt-login-v2 .kt-login-v2__footer .kt-login-v2__link>a {
    color: #9c9fb1;
    font-weight: 500;
    font-size: 1rem
}

.kt-login-v2 .kt-login-v2__footer .kt-login-v2__link>a:not(:first-child):not(:last-child) {
    margin: 0 2rem
}

@media (max-width: 1024px) {
    .kt-login-v2 .kt-login-v2__head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 1.5rem 2rem
    }

    .kt-login-v2 .kt-login-v2__head .kt-login-v2__logo {
        margin-bottom: 2rem
    }

    .kt-login-v2 .kt-login-v2__head .kt-login-v2__signup>span {
        padding-left: 0
    }

    .kt-login-v2 .kt-login-v2__body {
        padding-top: 1rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper {
        padding-left: 0;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container {
        margin-left: 0
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__title {
        padding-top: 1rem
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__form {
        padding: 3rem 2rem
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__actions {
        padding: 0
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options {
        margin: 1rem 0;
        padding: 2rem
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a>i {
        padding: .4rem .3rem .4rem 0
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__wrapper .kt-login-v2__container .kt-login-v2__options>a:not(:first-child):not(:last-child) {
        margin: 0 2rem
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__image {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 100%;
        margin-left: 0;
        padding: 4rem 0
    }

    .kt-login-v2 .kt-login-v2__body .kt-login-v2__image>img {
        width: 100%;
        max-width: 500px;
        height: 100%
    }

    .kt-login-v2 .kt-login-v2__footer {
        padding: 1.5rem 2rem
    }

    .kt-login-v2 .kt-login-v2__footer .kt-login-v2__info>a {
        padding-right: .5rem
    }

    .kt-login-v2 .kt-login-v2__footer .kt-login-v2__link>a:not(:first-child):not(:last-child) {
        margin: 0 1rem
    }
}

.blockUI {
    margin-top: 20px !important
}

.blockUI.blockMsg {
    border: none !important;
    background: none !important;
    box-shadow: none !important;
}

.pace {
    -webkit-pointer-events: none;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.pace-inactive {
    display: none
}

.pace .pace-progress {
    background: red;
    position: fixed;
    z-index: 2000;
    top: 0;
    right: 100%;
    width: 100%;
    height: 2px
}

.height-43 {
    height: 43px;
    font-size: 1rem;
    font-weight: 400
}

.kt-badge--red {
    background-color: red;
    color: #fff
}

span.kt-datatable--error {
    margin: 25px
}

.Incomplete {
    background-color: #fff !important;
    border: 1px solid #d3dae6 !important;
    color: #8614de !important
}

.New {
    background-color: #eee !important;
    border: 1px solid #d3dae6 !important;
    color: #645ca1 !important
}

.Pending {
    background-color: #fff !important;
    border: 1px solid #d3dae6 !important;
    color: #ffb822 !important
}

.Approved {
    background-color: #d3dae6 !important;
    border: 1px solid #d3dae6 !important;
    color: #586272 !important
}

.Modified {
    background-color: #645ca1 !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}

.Cleaned {
    background-color: #9816f4 !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}

.Registered,
.ac_booking.Registered {
    background-color: #d1fae5 !important;
    border: 1px solid #10b981 !important;
    color: #065f46 !important;
}

.Checked-In {
    background-color: #fff !important;
    border: 1px solid #5d78ff !important;
    color: #5d78ff !important
}

.Checked-Out {
    background-color: #5d78ff !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}

.No_show {
    background-color: #fd397a !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}

.Invalid_cc {
    background-color: #fd397a !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}

.Cancelled {
    background-color: #fff;
    border: 1px solid #fd397a !important;
    color: #fd397a !important
}

.Debtor {
    background-color: red !important;
    border: 1px solid #fd397a !important;
    color: #fff !important
}

.Problematic {
    background-color: red !important;
    border: 1px solid #fd397a !important;
    color: #fff !important
}

.Prepaid {
    background-color: #fff !important;
    border: 1px solid #ffb822 !important;
    color: #645ca1 !important
}

.Paid {
    background-color: #ffb822 !important;
    border: 1px solid #d3dae6 !important;
    color: #111 !important
}

.PaidCC {
    background-color: #ffb822 !important;
    border: 1px solid #d3dae6 !important;
    color: #111 !important
}

.Completed {
    background-color: #1dc9b7 !important;
    border: 1px solid #d3dae6 !important;
    color: #fff !important
}


.iti__flag.iti__np {
    background-color: transparent;
}

/* Ensure fixed header does not cover content on mobile and desktop */
.top_padding {
    padding-top: 72px !important;
}

/* Onepage Listing / Room Gallery Slider */
.onepage-slider-wrapper {
    min-height: 300px;
    max-height: 450px;
}

.onepage-slider-img {
    height: 450px !important;
    width: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    background: #fafafa;
}

@media (max-width: 991.98px) {
    .onepage-slider-wrapper {
        min-height: unset !important;
        max-height: none !important;
        height: auto !important;
    }

    .onepage-slider-img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 4 / 3 !important;
        max-height: 350px !important;
        min-height: 250px !important;
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* Safebox Instant Check-in Scan ID Header */
.safebox-scan-header {
    border-bottom: 1px solid rgba(244, 63, 94, 0.15);
}
.safebox-scan-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #e11d48;
    box-shadow: 0 2px 6px rgba(225, 29, 72, 0.15);
    margin-right: 15px !important;
    flex-shrink: 0;
}
.safebox-scan-title {
    font-weight: 700;
    font-size: 13.5px;
    color: #9f1239;
}
.safebox-scan-desc {
    color: #6c757d;
    font-size: 11.5px;
    line-height: 1.35;
}
.safebox-scan-btn-wrap {
    flex-shrink: 0;
    width: 100%;
}
.safebox-scan-btn {
    background-color: #e11d48;
    border-color: #e11d48;
    color: #ffffff !important;
    border-radius: 20px;
    font-weight: 600;
    padding: 7px 22px;
    width: 100%;
    white-space: nowrap;
    transition: all 0.2s ease;
}
.safebox-scan-btn:hover {
    background-color: #be123c;
    border-color: #be123c;
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(225, 29, 72, 0.25);
}

@media (min-width: 576px) {
    .safebox-scan-btn-wrap {
        width: auto !important;
        text-align: right;
    }
    .safebox-scan-btn {
        width: auto !important;
    }
}

/* ==========================================================================
   Luxury Modern Leaflet Maps (Esri Basemap & Interactive UI)
   ========================================================================== */
.map-wrapper-300, .map-wrapper, .map-wrapper-400, #detailMap, #categoryMap, #detailSideMap {
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08) !important;
    border: 1px solid rgba(226, 232, 240, 0.8) !important;
    position: relative;
    z-index: 1;
}

/* Modern Rounded Zoom Controls */
.leaflet-control-zoom.leaflet-bar {
    border: none !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-left: 14px !important;
    margin-top: 14px !important;
    background: #ffffff !important;
}
.leaflet-control-zoom.leaflet-bar a {
    background-color: #ffffff !important;
    color: #1e293b !important;
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    border: none !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.leaflet-control-zoom.leaflet-bar a:last-child {
    border-bottom: none !important;
}
.leaflet-control-zoom.leaflet-bar a:hover {
    background-color: #f1f5f9 !important;
    color: #4E66F8 !important;
}

/* Sleek Frosted Glass Attribution */
.leaflet-control-attribution {
    background: rgba(255, 255, 255, 0.82) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    padding: 4px 12px !important;
    font-size: 11px !important;
    color: #64748b !important;
    border-radius: 10px 0 0 0 !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.04) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.6) !important;
    border-left: 1px solid rgba(255, 255, 255, 0.6) !important;
}
.leaflet-control-attribution a {
    color: #4E66F8 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}
.leaflet-control-attribution a:hover {
    text-decoration: underline !important;
}

/* Luxury Map Marker with Pulse Effect */
.nobeds-marker-divicon {
    background: transparent !important;
    border: none !important;
}
.nobeds-marker-pulse-wrapper {
    position: relative;
    width: 32px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.nobeds-marker-pulse-ring {
    position: absolute;
    bottom: -2px;
    left: 50%;
    transform: translateX(-50%);
    width: 32px;
    height: 14px;
    background: radial-gradient(ellipse at center, rgba(78, 102, 248, 0.55) 0%, rgba(78, 102, 248, 0) 75%);
    border-radius: 50%;
    animation: nobedsPulseRing 2.2s cubic-bezier(0.2, 0.8, 0.2, 1) infinite;
    pointer-events: none;
}
@keyframes nobedsPulseRing {
    0% { transform: translateX(-50%) scale(0.6); opacity: 1; }
    100% { transform: translateX(-50%) scale(2.6); opacity: 0; }
}
.nobeds-marker-pin {
    position: relative;
    width: 32px;
    height: 48px;
    filter: drop-shadow(0 6px 14px rgba(15, 23, 42, 0.32));
    cursor: pointer;
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
    display: block;
}
.nobeds-marker-pin:hover {
    transform: scale(1.15) translateY(-4px);
}

/* Cleaned & Ready Badge on OnePage Listing Card Images */
.cleaned-ready-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 25;
    background: rgba(46, 204, 113, 0.94);
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    box-shadow: 0 4px 14px rgba(46, 204, 113, 0.4);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, 0.4);
    letter-spacing: 0.3px;
    pointer-events: auto;
    transition: all 0.25s ease;
}

.cleaned-ready-badge:hover {
    transform: scale(1.05);
    background: rgba(39, 174, 96, 0.98);
}

.cleaned-ready-broom {
    display: inline-block;
    font-size: 13px;
    animation: cleanedBroomPulse 1.6s infinite ease-in-out;
}

@keyframes cleanedBroomPulse {
    0% { transform: scale(1) rotate(0deg); opacity: 0.9; }
    30% { transform: scale(1.28) rotate(-12deg); opacity: 1; filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.9)); }
    60% { transform: scale(1.1) rotate(8deg); opacity: 1; }
    100% { transform: scale(1) rotate(0deg); opacity: 0.9; }
}

/* Language selector clean arrow styling */
#homeDropdownMenuLink::after {
    display: none !important;
}


