﻿body {
    /*    font-family: Raleway;*/
    font-family: inter;
    /*    background: #f8f8f8;*/
}

@font-face {
    font-family: Raleway; /* set name */
    src: url(/css/Fonts/Raleway-VariableFont_wght.ttf); /* url of the font */
}

@font-face {
    font-family: inter; /* set name */
    src: url(/css/Fonts/Inter-VariableFont_opsz,wght.ttf); /* url of the font */
}

@font-face {
    font-family: 'alta';
    src: url('fonts/alta-regular.otf') format('opentype');
}




.otp-shield {
    animation: myAnim 1.5s ease-in-out infinite;
}


@keyframes myAnim {
    /* ---- SHAKE (0s - 2s) ---- */
    0% {
        transform: translateX(0);
    }

    10% {
        transform: translateX(-3px);
    }

    20% {
        transform: translateX(3px);
    }

    30% {
        transform: translateX(-3px);
    }

    40% {
        transform: translateX(3px);
    }

    50% {
        transform: translateX(0);
    }
    /* ---- PAUSE (2s - 4s) ---- */
    51% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(0);
    }
}


.page_content {
    padding: 59px 13px 55px 13px;
}

.stay_in_items a {
    color: black;
}
/*----------------------nav default class / style ---------------------*/
.navbar-dark {
    display: none;
}

.top-row {
    display: none !important;
}

.sidebar {
    display: none;
}


.form-control {
    border-radius: 7px;
    font-size: 14px;
    padding: 0.6rem .75rem;
    background: #dddddd3b;
}

.input-group-text {
    border-radius: 10px;
    background-color: #f5f6f8;
}

.bg_gray_input {
    background: #e9ecef75;
}


.border {
    border: 1px solid #dee2e685 !important;
}

.w-80 {
    width: 80%;
}
/*--------------------------------------------------------------------------*/
.otp_inputs .form-control {
    background: #f3f3f354;
    font-weight: 700;
    color: #616161;
    font-size: 18px;
}

.logo_dis {
    align-content: center;
    height: 100vh;
}

.hr_break {
    margin-top: 30px;
}

    .hr_break hr {
        margin: 0px;
    }

    .hr_break span {
        position: relative;
        top: -13px;
        background: #fff;
        padding: 0px 5px;
    }


.btn-add {
    background: #47b95a;
    color: #fff;
    border: none;
    border-radius: 3px;
    padding: 2px 0px;
    font-size: 14px;
    font-weight: 500;
    /* width: 90px; */
    display: flex;
    justify-content: space-between;
    align-items: end;
    height: max-content;
}

.btn-add-one {
    background: #47b95a;
    color: #fff;
    border: none;
    border-radius: 7px;
    padding: 3px 0px;
    font-size: 18px;
    font-weight: 500;
    width: 90px;
    display: flex;
    justify-content: center;
    align-items: end;
    height: max-content;
}


.btn-subscribe {
    background: #818181cc;
    color: #ffffff;
}

.item-inc-btn, .item-dec-btn {
    padding: 2px 7px;
}

.cart-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 50px;
}


.cart-items {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding-bottom: 6px;
}


.modal-btn-success {
    background: #49be5d;
    border: none;
    color: #fff;
    padding: 5px 11px;
    border-radius: 5px;
}

.modal-btn-cancel {
    background: #afafaf;
    border: none;
    color: #ffffff;
    padding: 5px 11px;
    border-radius: 5px;
}
/*----------------------Services Page---------------------------*/
.service_btn {
    padding: 12px 11px;
    height: 100px;
    width: 120px;
    border: none;
    border-radius: 6px;
    font-size: 18px;
    font-weight: 400;
    animation: btnEntry 2s ease 0s 1 normal forwards;
}


@keyframes btnEntry {
    0% {
        opacity: 0;
        transform: scale(1.4);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}


.stay_in {
    background: #47b95a;
    color: #fff;
}

.food_btn {
    background: #f35a34;
    color: #fff;
}


.page_header {
    position: fixed;
    width: 100%;
    z-index: 3;
    background-color: white;
}


.serv-icon {
    width: 110px;
}

.serv-food-icon {
    position: absolute;
    top: 100px;
    z-index: -1;
    transform: rotate(348deg);
    right: -100px;
}

.serv-delivery-icon {
    position: absolute;
    left: -70px;
}


/*------------------------Stay in--------------------------*/
.stay_header {
    padding: 12px 29px;
    /*        color: #2e8b57;*/
    color: #44a952;
    border-bottom: 1px solid #ddd;
    margin-bottom: 13px;
    font-size: 24px;
}

.fw-500 {
    font-weight: 500;
}

.fw-600 {
    font-weight: 600;
}

.search_input {
    display: flex;
    align-items: center;
    width: 103%;
    margin: 4px -11px;
}

    .search_input .search_bar {
        background: #8080800a;
        /*        padding: 3px;*/
        padding: 3.9px 30px;
        border-radius: 8px;
        font-size: 16px;
        /* border: 1px solid #93ecfd; */
        /*        box-shadow: 0px 1px 1px #00000033;*/
    }

    .search_input .search_icon {
        color: #757272;
        position: relative;
        left: 25px;
    }

    .search_input .location_icon {
        /*  color: #757272;*/
        position: relative;
        right: 23px;
        font-size: 17px;
        color: #49be5d;
    }

.qr_scan_icon {
    font-size: 21px;
}

.user_stay_icon {
    font-size: 20px;
}

user_profile {
    font-size: 20px;
}

.card_item {
    /* background: #ceefced6; */
    background: #e0f4e4;
    border-radius: 10px;
    padding: 18px 5px;
    text-align: center;
    /* box-shadow: 2px 3px 0px #a9a9a938; */
    margin: 8px;
    border-right: 3px solid #79db8d45;
    border-bottom: 3px solid #79db8d45;
}

.stay_in_items {
    padding: 30px;
}

.stay_dash_img img {
    width: 56px;
    height: 45px;
    margin-bottom: 7px;
}

.card_item label {
    font-size: 14px;
}


.login_google button {
    background: #fff;
    border: 1px solid #ddd;
    width: 94%;
    margin-top: 10px;
    border-radius: 10PX;
}

.head_wel_lbl {
    font-size: 16px;
}

.qr_line {
    /*filter: brightness(0) saturate(100%) invert(47%) sepia(10%) saturate(2891%) hue-rotate(94deg) brightness(91%) contrast(75%);*/
}

.filter-theme-blue {
    filter: brightness(0) saturate(100%) invert(47%) sepia(89%) saturate(2205%) hue-rotate(156deg) brightness(101%) contrast(101%);
}


/* Filters / chips */
.filters {
    gap: 5px;
    overflow-x: auto;
    padding: 8px 5px;
    margin-bottom: 8px;
    scrollbar-width: none;
    margin-top: 5px;
    -ms-overflow-style: none;
}


.chip {
    background: #fbfbfb;
    border-radius: 8px;
    padding: 5px 6px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    border: 1px solid #bfbfbf;
}

.chip-active {
    /* background: #cd8d3b;*/
    /*        background: #358ae5;*/
    background: #49be5d;
    color: #ffffff;
    border: 1px solid #49be5d;
}

.listing-card {
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 2px 3px 4px -1px rgb(20 20 20 / 9%);
    overflow: hidden;
    margin-bottom: 0px;
    background: #fff;
}

.hotal_card_img {
    /*    border: 1px solid #ddd;
    border-radius: 5px;*/
    /*    box-shadow: 2px 3px 4px -1px rgb(20 20 20 / 9%);*/
    overflow: hidden;
    /*    margin-bottom: 18px;*/
    background: #fff;
}

.listing-card .card-img-top {
    height: 180px;
    object-fit: cover;
}

.hotal_card_img .card-img-top {
    height: 220px;
    /* object-fit: cover; */
    border-radius: 14px;
}

.card-body {
    padding: 12px 18px;
    background: #ffffff;
}

.listing-title {
    font-weight: 500;
    font-size: 17px;
    margin-bottom: 0px;
    color: #8c1010;
}

.status-available {
    color: #ffffff;
    font-weight: 400;
    /* margin-bottom: 6px; */
    background: #48ba5b;
    border-radius: 5px;
    font-size: 13px;
    padding: 2px 6px;
}

.status-not {
    color: #e63946;
    font-weight: 600;
    margin-bottom: 6px;
}

.price {
    /*color: #426f59;*/
    /*    color: #05b5;*/
    /*    color: #00b4d8;*/
    /*    color: #49be5d;
    font-weight: 700;
    font-size: 20px;*/
    /*    margin: 5px 0px;*/
    /*    color: #ff6a2b;*/
    color: #3c3f3c;
    font-weight: 600;
    font-size: 17px;
}

.btn-call {
    background: #f35a34;
    border: 1px solid;
    color: #fff;
    width: 80%;
    text-align: center;
    margin-bottom: 10px;
}

.rating {
    color: #f0a500;
    font-weight: 600;
    /* text-shadow: 1px 1px 4px #000000b0; */
    font-size: 13px;
}

.bg-rating {
    background: #00000069;
    padding: 0px 6px;
    border-radius: 4px;
}




.property-reviews {
    display: flex;
    position: absolute;
    top: -33px;
    width: 100%;
    justify-content: space-between;
    /*    z-index: 15;*/
}


/* Offer badge */
.offer-badge {
    position: absolute;
    top: 6px;
    right: 6px;
    /* background: #b30000; */
    /* background: #db5757; */
    background: #ffffffd6;
    color: #f1390b;
    font-weight: 500;
    padding: 6px 8px;
    border-radius: 8px;
    font-size: 14px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
    line-height: 1;
}

/* Make card content area relative for absolute badge */
.card-wrapper {
    position: relative;
}

.hrt-active {
    color: orangered;
}

.fs-7 {
    font-size: 0.9rem;
}

.fs-8 {
    font-size: 0.8rem;
}


.amenity-icon {
    color: #6c757d;
    width: 1rem;
}

.btn-regular {
    background: #ffffff;
    color: #49bd5d;
    border-radius: 12px;
    padding: 8px 18px;
    font-weight: 600;
    box-shadow: 0 4px 10px rgb(18 182 93 / 0%);
    width: 100%;
    font-size: 14px;
    border: 1px solid #49be5d;
}

    .btn-regular:hover {
        background: #49be5d;
        color: #fff;
    }

.btn-booking {
    /*background: linear-gradient(90deg, #12b65d, #0fa84f);*/
    /*    background: #00B4D8;*/
    background: #49be5d;
    /*    color: white;
    border: none;
    border-radius: 12px;
    padding: 8px 18px;
    font-weight: 600;
    box-shadow: 0 4px 10px rgba(18, 182, 93, 0.18);
    width: 100%;*/
    font-size: 15px;
    border: 1px solid;
    color: #fff;
    width: 73%;
    text-align: center;
}

    .btn-booking:disabled {
        background: #71c8d9;
    }


.slide-cart-ing {
    height: 140px;
    object-fit: cover;
    border-radius: 5px;
}


.fa-lg {
    font-size: 18px;
}

.profile-list i {
    color: #49be5d;
}

.text-green {
    color: #49be5d;
}


.share-type {
    display: flex;
    gap: 10px;
    align-items: center;
    background: #f5f4f4;
    padding: 3px 6px;
    border-radius: 6px;
    border: 1px solid #dfdfdf94;
    justify-content: center;
    font-size: 12px;
}

.select-share-type {
    background: #dbf7e0;
    color: #1c832d;
    border: 1px solid #a5e7b0;
    /* box-shadow: 1px 0px 1px #82c78e; */
    /* text-align: center;*/
}



/*request sent css*/
.check-circle {
    width: 96px;
    height: 96px;
    background: #10a24a; /* green */
    border-radius: 50%;
    color: white;
    font-size: 34px;
    box-shadow: 0 6px 18px rgba(16,162,74,0.18);
}

.info-card {
    background: #fff;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
    max-width: 520px;
}

/* icon circle on left */
.icon-wrap {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #118a43;
    border: 1.5px solid rgba(17,138,67,0.16);
    background: rgba(17,138,67,0.03);
    font-size: 16px;
}


.check_request {
    background: #10a24a;
    border-radius: 50%;
    color: white;
    font-size: 34px;
    box-shadow: 0 6px 18px rgba(16, 162, 74, 0.18);
    padding: 13px 15px;
    margin-bottom: 35px;
    animation: zoom-in-zoom-out 2s ease infinite;
}

.stay-offer-display {
    display: flex;
    gap: 13px;
    overflow-x: auto;
    scrollbar-width: none;
}

.offer-card {
    position: relative;
    background: linear-gradient(135deg, #dff5c9, #c7e6a4);
    border-radius: 8px;
    padding: 5px 13px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.08);
    margin-top: 10px;
    display: flex;
    min-width: 90%;
}

.offer-card-title {
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 0px;
}

.offer-content {
    width: 220px;
}

.offer-card-desc {
    font-size: 11px;
    color: #444;
    max-width: 70%;
}

.order-btn {
    margin-top: 6px;
    background: #000;
    color: #fff;
    border: none;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 10px;
}

.offer-img {
    position: absolute;
    right: 0px;
    bottom: 0;
    width: 120px;
    object-fit: fill;
    border-radius: 10px;
    height: 115px;
}




@keyframes zoom-in-zoom-out {
    0% {
        scale: 100%
    }

    50% {
        scale: 130%;
    }

    100% {
        scale: 100%;
    }
}


/* GALLERY */
.gallery-scroll {
    display: flex;
    /* grid-template-columns: repeat(3, 1fr); */
    gap: 10px;
    margin-bottom: 20px;
    overflow: auto;
}

    .gallery-scroll img {
        width: 115px;
        height: 100px;
        object-fit: cover;
        border-radius: 12px;
        flex-shrink: 0;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
        cursor: pointer;
    }


.gal-img-preview {
    height: 40vh;
    width: 100%;
}

.preview-img-clicks {
    display: flex;
    justify-content: space-between;
    position: absolute;
    top: 50%;
    width: 93%;
}

    .preview-img-clicks i {
        font-size: 30px;
        color: #fff;
        text-shadow: 1px 2px 5px #000000;
    }

.prev-modal-close {
    border: none;
    font-size: 16px;
    position: absolute;
    border-radius: 50px;
    color: #000000;
    right: 20px;
    top: 20px;
    background: #fff;
}


/*------------------Booking------------------*/

.booking_navtabs {
    justify-content: space-around;
}

    .booking_navtabs .nav-link {
        border: none;
        color: #6b6b6b;
        font-weight: 600;
        padding-top: 12px;
        padding-bottom: 12px;
    }


        .booking_navtabs .nav-link.active {
            color: #000;
            border-bottom: 3px solid #000;
            background: transparent;
        }

    .booking_navtabs .nav-link {
        border: none;
        color: #6b6b6b;
        font-weight: 600;
        padding-top: 12px;
        padding-bottom: 12px;
    }


/* Card */
.booking-card {
    border-radius: 16px;
}

/* Status Badges */
.status-badge {
    padding: 5px 12px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 12px;
}

    .status-badge.confirmed {
        background: rgba(0,166,60,0.12);
        color: #00a63c;
        border: 1px solid rgba(0,166,60,0.15);
    }

    .status-badge.pending {
        background: rgba(255,158,0,0.12);
        color: #ff9e00;
        border: 1px solid rgba(255,158,0,0.15);
    }

.confirmed {
    background: rgba(0,166,60,0.12);
    color: #00a63c;
    border: 1px solid rgba(0,166,60,0.15);
}

.pending {
    background: rgba(255,158,0,0.12);
    color: #ff9e00;
    border: 1px solid rgba(255,158,0,0.15);
}


/*    ------------------profile--------------------*/

.avatar {
    width: 92px;
    height: 92px;
    background: #efefef;
    border-radius: 50% 50%;
}

.rounded-circle {
    border-radius: 50% !important;
}

.camera-btn {
    position: absolute;
    right: -6px;
    bottom: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #ff7a2d;
    border: 3px solid #fff;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08);
}

.premium-pill {
    background: linear-gradient(90deg, #52c966, #18b924);
    /*    background: linear-gradient(90deg, #48c3e3, #1298bb);*/
    color: white;
    padding: 6px 12px;
    border-radius: 20px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
}

.bg-pale-green {
    background: #f2fff0;
}

.bg-pale-blue {
    background: #ddf8ffb5;
}

.rounded-10 {
    border-radius: 10px;
}

.text-orange {
    color: #ff7a2d;
}

.text-blue {
    color: #00b4d8;
}

.booking-list {
    padding: 0px;
}

.booking-listt-items {
    font-size: 15px;
    font-weight: 500;
    padding: 9px 7px;
    list-style: none;
    background: #fff;
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
    border: 1px solid #ddd;
    border-radius: 6px;
}


/*---------------------------scan qr------------------*/


/* Top QR box */
.qr-box {
    background: #f3f5f9;
    border-radius: 24px;
}

/* QR frame */
.qr-frame {
    width: 220px;
    height: 220px;
    background: #fdfdfd;
    border-radius: 24px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.corner {
    position: absolute;
    width: 44px;
    height: 44px;
    border: 4px solid #2f80ff;
}

.top-left {
    top: 0;
    left: 0;
    border-right: none;
    border-bottom: none;
}

.top-right {
    top: 0;
    right: 0;
    border-left: none;
    border-bottom: none;
}

.bottom-left {
    bottom: 0;
    left: 0;
    border-right: none;
    border-top: none;
}

.bottom-right {
    bottom: 0;
    right: 0;
    border-left: none;
    border-top: none;
}

.btn-scan {
    margin-top: 18px;
    border-radius: 12px;
    padding: 10px 26px;
    font-weight: 600;
    background-color: #2f80ff;
    border-color: #2f80ff;
}

/* Card blocks */
.card-block {
    background: #ffffff;
    border-radius: 20px;
    padding: 14px 16px;
    box-shadow: 0 8px 18px rgba(0,0,0,0.04);
    border: 1px solid #dddddd73;
}

/* Steps */
.step-badge {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
}

.bg-step1 {
    background: #4dabf7;
}

.bg-step2 {
    background: #f783ac;
}

.bg-step3 {
    background: #69db7c;
}


/* --------------qr sucess css -------------- */

/* Success card */
.success-card {
    border-radius: 24px;
}

.success-circle {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    background: #e2f9ea;
    color: #14b65a;
}

/* Scanned data box */
.scanned-box {
    background: #f4f7ff;
    border-radius: 18px;
    padding: 14px;
}

.scanned-value {
    background: #ffffff;
    border-radius: 10px;
    padding: 10px 12px;
    font-weight: 600;
    font-size: 14px;
    border: 1px solid #e1e7ff;
}


/* --------------qr Failed css -------------- */

/* Failed card */
.failed-card {
    border-radius: 24px;
}

.failed-circle {
    width: 82px;
    height: 82px;
    border-radius: 50%;
    background: #ffe5e5;
    color: #ff3b30;
}

/* Error data box */
.error-box {
    background: #fff6f6;
    border-radius: 18px;
    padding: 14px;
}

.error-value {
    background: #ffffff;
    border-radius: 10px;
    padding: 10px 12px;
    font-weight: 600;
    font-size: 14px;
    border: 1px solid #ffd0d0;
    color: #c0392b;
}

/* Info cards */
.info-card {
    background: #f4f7ff;
    border-radius: 18px;
    padding: 16px 14px;
}

/* Tips icons */
.step-badge {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 13px;
}

.bg-step1 {
    background: #2f80ff;
}

.bg-step2 {
    background: #ff9f43;
}

.bg-step3 {
    background: #27ae60;
}

.offcanvas {
    border-radius: 15px 15px 0px 0px;
}

.offcanvas-header {
    border-bottom: 1px solid #ddd;
    padding: 8px;
}

.offcanvas-title {
    font-size: 16px;
}

/*    --------------Saved Locations--------------------------*/


/* Search box */
.search-box .input-group {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.04);
}

.search-input {
    border: none;
    padding: 12px 14px;
    font-size: 14px;
}

    .search-input:focus {
        box-shadow: none;
    }

.search-icon {
    border: none;
    background: #ffffff;
}

/*    Quick action cards*/
.quick-card {
    border-radius: 18px;
    border: 1px solid #e3e3ef;
    background: #ffffff;
    padding: 10px 8px;
    text-align: left;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.quick-icon {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #f5f5fb;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quick-text {
    font-size: 13px;
    line-height: 1.3;
    color: #333;
    font-weight: 500;
}

.selected-pill {
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 999px;
    background: #c9ffe6;
    color: #00a86b;
}

.addr-icon {
    background: #f0f0f0;
    padding: 4px 4px;
    width: max-content;
    text-align: center;
    border-radius: 7px;
    width: 60px;
}

.addr-distance {
    font-size: 11px;
}

.remove_icon {
    font-size: 16px;
    color: #FC6E5B;
}


/*---------------------------Select Location Css------------------*/
/* Whole screen */
.location-map-page {
    position: relative;
    height: 100vh;
    overflow: hidden;
    background: #f5f5f5;
}

/* Top bar */
.top-bar {
    height: 52px;
    background: #ffffff;
    border-bottom: 1px solid #eeeeee;
    z-index: 3;
}

/* Search bar overlay */
.search-wrapper {
    position: absolute;
    top: 56px;
    left: 0;
    right: 0;
    z-index: 3;
}

.search-group {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0,0,0,0.06);
    background: #ffffff;
    margin: 0 auto;
    max-width: 520px;
}

    .search-group .form-control {
        padding: 10px 12px;
        font-size: 14px;
    }

        .search-group .form-control:focus {
            box-shadow: none;
        }

    .search-group .input-group-text {
        padding-right: 12px;
    }

/* Map area */
/*.map-area {
        position: absolute;
        top: 120px;*/ /* below header */
/*left: 0;
        right: 0;
        bottom: 130px;*/ /* space for bottom sheet */
/*}*/

.bottom-sheet {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 55px;
    padding: 14px 18px 18px;
    background: #ffffff;
    border-radius: 20px 20px 0 0;
    box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.1);
    z-index: 4;
    max-width: 520px;
    margin: 0 auto;
}


/* Confirm button */
.btn-confirm {
    border-color: #10ab52;
    color: #ffffff;
    font-weight: 600;
    border-radius: 16px;
    padding: 10px 0;
    font-size: 15px;
    background-image: linear-gradient(90deg, rgb(18, 182, 93), rgb(15, 168, 79));
}

    .btn-confirm:hover {
        background: #e24b22;
        border-color: #e24b22;
    }


/*    
    .fake-map {
        width: 100%;
        height: 100%;
        background-color: #dde7f0;
        background-image: linear-gradient(45deg, #e3edf7 25%, transparent 25%), linear-gradient(-45deg, #e3edf7 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #e3edf7 75%), linear-gradient(-45deg, transparent 75%, #e3edf7 75%);
        background-size: 40px 40px;
        background-position: 0 0, 0 20px, 20px -20px, -20px 0;
    }
*/

.offcanvas.offcanvas-bottom {
    height: auto;
}

.btn-green {
    background-color: #0eaf34;
    border-color: #16b96e;
    color: #fff;
    font-weight: 600;
    border-radius: 10px;
    padding: 8px 20px;
    border: 1px solid;
}

.food_item label {
    line-height: 1.1;
}



.text-orange {
    color: #ff6a2d !important;
}


/* place info */
.place-info {
    border-radius: 16px;
}

.place-icon {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: #35e39387;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0b844c;
    margin-top: 4px;
}

/* yellow info banner */
.alert-detail {
    background: #ffc10759;
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 13px;
    color: #a84714;
}

/* labels */
.field-label {
    font-size: 11px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    font-weight: 600;
    color: #8e8e95;
    margin-bottom: 4px;
}

/* underline style input */
.field-underline {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    border-radius: 0;
    padding-left: 0;
    padding-right: 0;
}

    .field-underline:focus {
        box-shadow: none;
        border-bottom-color: #16b96e;
    }

/* voice chip */
.voice-chip {
    border-radius: 999px;
    background: #f9f9fb;
    padding: 8px 12px;
    font-size: 13px;
}

.bg-new {
    background-color: #ff6a2d;
}

.directions-box {
    resize: none;
    border-radius: 12px;
    border-color: #ececf1;
    font-size: 13px;
}

/* chips */
.chip-btn {
    border-radius: 999px;
    border: 1px solid #e0e0e5;
    background: #ffffff;
    padding: 6px 12px;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #333;
}

/*    .chip-btn.active {
        background: #fff0e6;
        border-color: #ff6a2d;
        color: #ff6a2d;
    }*/

.location_pop_head {
    width: 85%;
    flex-wrap: wrap;
    display: flex;
}

hr {
    border-color: #9c999963 !important;
    background: #7b7b7b7a;
}




/*    -----------------Reviews & Ratings ------------------------*/


/* overall rating */
.overall-rating {
    font-size: 46px;
    font-weight: 700;
    color: #1b8a3a;
    line-height: 1;
}

/* rating distribution */
.rating-row {
    display: flex;
    align-items: center;
    margin-bottom: 6px;
}

.rating-label {
    width: 12px;
    text-align: right;
    font-size: 14px;
}

.rating-count {
    font-size: 12px;
    color: #777;
}

.progress {
    height: 8px;
    background-color: #e6e6e6;
    border-radius: 999px;
    overflow: hidden;
}

/*.bg-rating {
    background-color: #ffd200;
}*/



/* avatar */
.avatar-circle {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #0f8b3c;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
}

.rating-stars i {
    font-size: 28px;
    margin: 0 2px;
    color: #d4d4d4;
}

/* Review textarea card */
.review-box {
    border-radius: 14px;
    background: #f7f7f9;
}

    .review-box textarea {
        background: transparent;
        resize: none;
        font-size: 14px;
    }


.active_star {
    color: #ffc107;
}


/*    ------------------------Notifications--------------------------*/

.notif-tabs {
    display: flex;
    justify-content: space-around;
}

    .notif-tabs .nav-link {
        border: none;
        color: #777;
        font-size: 14px;
        padding: 12px 15px;
    }

        .notif-tabs .nav-link.active {
            color: #ff7a2d;
            font-weight: 600;
            border-bottom: 3px solid #ff7a2d;
        }

.btn-clear-all {
    padding: 4px 12px;
    border-radius: 999px;
    background: #ffe4dd;
    color: #ff4f2d;
    border: none;
    font-size: 13px;
}

.notif-tabs .nav-link {
    border: none;
    color: #777;
    font-size: 14px;
    padding: 12px 15px;
}

    .notif-tabs .nav-link.active {
        color: #ff7a2d;
        font-weight: 600;
        border-bottom: 2px solid #ff7a2d;
        padding: 12px 15px;
    }



.notif-card {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    border-radius: 14px;
    background: #ffffff;
    margin-top: 10px;
}

.notif-food {
    background: #fff3e8;
}

.notif-stay {
    background: #eaffe7;
}

.notif-icon {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

    .notif-icon.food {
        background: #ffe8d9;
        color: #ff7a2d;
    }

    .notif-icon.stay {
        background: #d9f7e5;
        color: #0f8b3c;
    }

    .notif-icon.offer {
        background: #ffe8d9;
        color: #ff7a2d;
    }

    .notif-icon.star {
        background: #fff4c4;
        color: #f7b500;
    }

.notif-dot {
    width: 10px;
    height: 10px;
    background: #ff5a2d;
    border-radius: 50%;
}


.settings-card {
    background: #ffffff;
    border-radius: 14px;
    padding: 16px;
    margin-bottom: 80px;
}

    .settings-card i {
        font-size: 18px;
        color: #3f9527;
    }

/*    .form-check-input {
        width: 40px;
        height: 20px;
        cursor: pointer;
    }*/

/*    ------------------------Refer & Earn------------------*/

.gift-circle {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #cdffc5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1dbd02;
    font-size: 28px;
}


.stat-value {
    font-weight: 700;
    font-size: 18px;
    color: #1dbd02;
}

.ref-card {
    border-radius: 10px;
    border: 1px dashed #adaaaa;
    background: #f6f6f6;
    padding: 14px 10px 16px;
}

.ref-code {
    letter-spacing: 0.18em;
    font-weight: 700;
    font-size: 16px;
}

.status-completed {
    background: #e6fff1;
    color: #03a65a;
    font-size: 11px;
    border-radius: 999px;
}

.history-item {
    padding-top: 10px;
    padding-bottom: 10px;
    border-top: 1px solid #f2f2f2;
}

/*    -----------------------------FAQ CSS -----------------------*/

.faq_active {
    background: #46b75a;
    color: #fff;
}

.faq-card {
    background: #ffffff;
    border-radius: 8px;
    margin-bottom: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    border: 1px solid #dee2e685;
}

/* Header row */
.faq-header {
    width: 100%;
    border: none;
    background: transparent;
    padding: 10px 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .faq-header:focus {
        outline: none;
    }

/*    .faq-question {
        margin-top: 4px;
        text-align: left;
    }*/

/* chevron */
.faq-chevron {
    font-size: 14px;
    color: #999;
    transition: transform 0.2s ease;
}

/* rotate chevron when open */
.faq-collapse.show + .faq-chevron,
.faq-header[aria-expanded="true"] .faq-chevron {
    transform: rotate(180deg);
}

/* Answer */
.faq-collapse {
    border-top: 1px solid #f1f1f4;
}

.faq-body {
    padding: 8px 14px 12px 14px;
    font-size: 14px;
    color: #555;
}

/*    ---------------------------------Vouchers CSS -----------------------*/

.info-banner {
    background: #fff;
    margin: 14px 0px;
    border-radius: 14px;
    padding: 14px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
    font-weight: 600;
    color: #333;
    border: 1px solid #dddddda1;
}

/* voucher card */
/*    .voucher-list {
        padding: 14px 12px 80px;
    }*/
/* bottom space for nav */
.voucher-card {
    background: #fff;
    border-radius: 14px;
    padding: 16px;
    margin-bottom: 14px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-start;
    box-shadow: 0 6px 14px rgba(0,0,0,0.03);
    position: relative;
    overflow: visible;
}

.voucher-main h6 {
    margin: 0 0 6px 0;
    font-size: 16px;
    font-weight: 800;
    color: #111;
}

.voucher-meta {
    color: #8a8a8a;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.code-box {
    background: #e6f2ff;
    padding: 8px 12px;
    border-radius: 8px;
    color: #0077cc;
    font-weight: 800;
    font-size: 13px;
    display: inline-block;
    border: 1px dashed rgba(0,119,204,0.12);
    align-self: flex-start;
}

.hero-card {
    background: linear-gradient(180deg, #8a2be2, #7f1fb8);
    color: #fff;
    margin: 14px 0px;
    border-radius: 14px;
    padding: 18px;
    display: flex;
    gap: 12px;
    align-items: center;
    overflow: hidden;
}

.hero-left {
    font-size: 32px;
    font-weight: 900;
    line-height: 1;
}

.hero-sub {
    color: #ffd44a;
    font-weight: 800;
    font-size: 12px;
    margin-top: 8px;
}

.hero-right {
    margin-left: auto;
    background: rgba(255,255,255,0.06);
    padding: 10px 16px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-align: center;
}

.w-80-per {
    width: 80%;
}

.w-90-per {
    width: 90%;
}

.accordion-button {
    padding: 10px 15px;
}

.color_green {
    color: #36c236;
}

.br-8 {
    border-radius: 8px !important;
}

.accordion-button:not(.collapsed) {
    background-color: #ffffff;
}


.voucher h5 {
    margin: 0 0 2px 0;
    font-weight: 800;
    font-size: 18px;
    color: #111;
}

/* voucher card inside category */
.voucher {
    background: var(--card-bg);
    /* margin: 14px; */
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.03);
    border: 1px solid #dddddd8a;
}

    .voucher h5 {
        margin: 0 0 8px 0;
        font-weight: 800;
        font-size: 18px;
        color: #111;
    }

    .voucher p.desc {
        margin: 7px 0 12px 0;
        color: #7a7a7a;
        font-size: 14px;
    }

.divider {
    height: 1px;
    background: #f1f1f4;
    margin: 12px 0;
}

.voucher-stats {
    display: flex;
    gap: 12px;
    justify-content: space-between;
    color: #888;
    font-size: 13px;
    margin-bottom: 12px;
}

    .voucher-stats .col {
        text-align: center;
    }

        .voucher-stats .col b {
            display: block;
            color: #111;
            font-size: 15px;
            margin-top: 6px;
            font-weight: 800;
        }

.voucher-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.voucher-terms {
    color: #0b75c9;
    font-weight: 600;
    text-decoration: underline;
    font-size: 13px;
}

.btn-voucher {
    background: #49be5d;
    color: #fff;
    border: none;
    padding: 10px 18px;
    border-radius: 10px;
    font-weight: 800;
}

.subscribed-lbl {
    color: #f35a34;
    font-weight: 500;
    /* border: 1px solid; */
    padding: 3px;
    /* border-radius: 7px; */
    font-size: 14px;
    font-size: 14px;
}


.vou_acc_body {
    padding: 9px 0px;
}

.fs-15 {
    font-size: 15px;
}

.w-65 {
    width: 65%;
}
/*    added css*/
.amenities {
    padding: 5px 8px;
    ;
    background: rgb(255 255 255 / 48%);
    border-radius: 6px;
    border: 1px solid #dbd9d9;
    margin-bottom: 5px;
}

.share-types {
    /*    padding: 5px 8px;
    background: rgb(245 245 245)    ;
    border-radius: 6px;
    border: 1px solid #f7f7f7;*/
    margin-bottom: 5px;
}

.stay-dash-card:hover {
    transform: rotate(2deg);
    scale: 1.03;
    background: #b4f5b4;
    /*    border-inline: 4px solid #5acf5a;*/
}

.count {
    font-size: 28px;
    font-weight: 500;
    color: #ff7a2d;
}

.btn-tbl-confirm {
    background: #f35a34;
    width: 100%;
    color: #fff;
    padding: 3px;
    height: 41px;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 500;
}

/*---------------------hotel details--------------------*/
.mess-option {
    height: 52px;
    border-radius: 14px;
    border: 1px solid #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    margin-bottom: 12px;
    background: #fafafa;
    cursor: pointer;
}

.option-select {
    background: antiquewhite;
    border: 1px solid #ffb450;
    box-shadow: 0px 0px 5px #ff78506b;
}

.card-body {
    border-radius: 10px;
}

.card {
    border-radius: 10px;
}

.word-text-break {
    word-break: break-word;
}

.view-upi {
    text-align: center;
}

.user_profile-stay {
    padding: 3px 4px;
    font-size: 20px;
    background: #e0f4e46e;
    border-radius: 5px;
    color: #30b930;
    border: 1px solid #c2dbc7;
}

.border-right-1 {
    border-right: 1px solid #ddd;
}


.bg_cancel {
    background: #e9ecef75;
    width: 80%;
}


.offercard-block {
    filter: blur(2px);
}


.btn-book-confirm {
    background: #49be5d;
    font-size: 15px;
    border: 1px solid;
    color: #fff;
    text-align: center;
    width: 100%;
}


.btn_cancel {
    background: #e9ecef75;
    font-size: 15px;
    border: 1px solid #ddd;
    color: #2d2d2d;
    text-align: center;
    width: 19%;
    border-radius: 3px;
    padding: 2px;
}

/*request*/
.heading-main {
    color: #72787d;
}

.heading {
    font-size: 15px;
}

.time-confirm {
    font-size: 20px;
    font-weight: 600;
    /* color: black; */
}

.color-green {
    color: #212529;
    font-size: 15px;
}

.request-btn-success {
    background-color: #44a952;
    color: white;
    width: 70% !important;
}

.confirm-main {
    height: 50vh;
    align-content: center;
    padding: 19px 16px;
}

.phone-icon {
    font-size: 13px;
}

.cancle-btn {
    font-size: 14px;
    font-weight: 400;
    width: 30%;
}

/*.cards-scroll {
    height: 60vh;
    overflow-y: auto;
    padding-bottom: 20px;
}*/

/*#timerBox {
    font-size: 16px;
    color: #dc3545;*/
/*    width: 77px;*/
/*text-align: center;
}*/



/*-----Request sent---------*/
.timer-pill {
    background: #fff1f1;
    color: #e53935;
    padding: 6px 12px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
}

.confirm-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 22px 18px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    margin: 10px 0;
    border: 1px solid #ddd;
}
/* TITLE */
.confirm-title {
    text-align: center;
    font-weight: 700;
    color: #222;
    margin-top: 10px;
}

/* SUBTEXT */
.confirm-sub {
    text-align: center;
    font-size: 14px;
    color: #666;
    margin-bottom: 15px;
}

/* CALL BOX */
.call-box {
    background: #f1f8f4;
    border-radius: 14px;
    padding: 12px;
    text-align: center;
    margin-bottom: 12px;
}

.call-text {
    font-size: 12px;
    color: #777;
}

.call-number {
    font-size: 16px;
    font-weight: 600;
    color: #2e7d32;
}

/* INFO NOTE */
.info-note {
    background: #f5f5f5;
    padding: 10px;
    border-radius: 10px;
    font-size: 13px;
    color: #555;
    text-align: center;
    margin-bottom: 16px;
}

/*---------------------------modal animation css-------------------*/



/*-------------------------RESPONSIVE CSS---------------------------------*/


@media only screen and (min-width: 1000px) {
    .page {
        width: 40% !important;
        margin: 0 auto;
    }

    .page_header {
        width: 40% !important;
    }

    .footer_nav {
        width: 40% !important;
    }

    .top-row[b-zx7vrli3jv], article[b-zx7vrli3jv] {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .slide-cart-ing {
        height: 200px;
    }

    .gallery-scroll {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 10px;
        margin-bottom: 15px;
    }
}


.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: space-between;
    padding: 9px;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(.3rem - 1px);
    border-top-right-radius: calc(.3rem - 1px);
    background: #f6f6f6;
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    flex-shrink: 0;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 6px 15px;
    border-top: 1px solid #dee2e6;
    border-bottom-right-radius: calc(.3rem - 1px);
    border-bottom-left-radius: calc(.3rem - 1px);
    background: #f6f6f6;
}

.offer_card {
    border-radius: 0px !important;
}

.card_scroll {
    width: 350px !important;
}

.page_content-details {
    padding: 51px 0px 53px 0px;
}

.Hotal-img {
    padding: 6px 8px;
}

.div-card {
    background: #fff;
    padding: 12px 15px;
    border-radius: 12px;
    border: 1px solid #dddddd6b;
    box-shadow: 1px 1px 3px 0px #dddddda1;
}


.nav-tabs1 {
    background: #ffffff;
    border-radius: 5px;
    border: none;
    padding: 0;
    margin: 0;
}

    .nav-tabs1 .nav-link {
        padding: 6px 18px;
        font-size: 16px;
        color: #4d4d4d;
        border: none;
        background: transparent;
        text-align: left;
        width: 85%;
        border-radius: 4px;
    }

        .nav-tabs1 .nav-link:hover {
            background-color: #f1faff;
            color: #0d6169;
        }


        .nav-tabs1 .nav-link.active {
            color: #000000 !important;
            font-weight: bold;
            background-color: #ffffff;
            border: none;
            border-bottom: 3px solid #6c757dba;
            border-radius: 4px 4px 0px 0px;
            box-shadow: 0px 1px 0px 1px #ddd;
        }

            /* Active tab hover & focus (same style) */
            .nav-tabs1 .nav-link.active:hover,
            .nav-tabs1 .nav-link.active {
                color: #000;
                background-color: #ffffff;
                border-bottom: 1px solid #6c757dba;
            }


.nav-link {
    cursor: pointer;
}

.nav-tabs1 .nav-item {
    width: 100%;
}

.form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 14px;
    gap: 14px;
    align-items: baseline;
}

.custom-tab-content {
    overflow: auto;
    height: 320px;
}

#filterCanvas .offcanvas-body {
    overflow-y: auto;
    padding-bottom: 80px; /* leave space above footer */
}

#filterCanvas .offcanvas-footer {
    position: absolute;
    bottom: 0;
    width: 100%;
}

.range_container {
    display: flex;
    flex-direction: column;
    width: 80%;
    margin: 7% 6%;
}

.sliders_control {
    position: relative;
    min-height: 22px;
}

.form_control {
    position: relative;
    display: flex;
    justify-content: space-between;
    font-size: 15px;
    color: #635a5a;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 24px;
    height: 24px;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0 0 1px #C6C6C6;
    cursor: pointer;
}

input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 24px;
    height: 24px;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0 0 1px #C6C6C6;
    cursor: pointer;
}

input[type=range]::-webkit-slider-thumb:hover {
    background: #f7f7f7;
}

input[type=range]::-webkit-slider-thumb:active {
    box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
    -webkit-box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
}



input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    height: 2px;
    width: 100%;
    position: absolute;
    background-color: #C6C6C6;
    pointer-events: none;
}

#fromSlider {
    height: 0;
    z-index: 1;
}
