/* Source: guests/accommodation.blade.php */
.stay-hero {
            background: url('https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&w=2000&q=90') center/cover no-repeat
        }

        .stay-search-section {
            position: relative;
            z-index: 10;
            margin-top: -65px
        }

        .stay-search-panel {
            padding: 25px 28px;
            border-radius: 20px;
            background: #fff;
            box-shadow: var(--shadow-lg)
        }

        .stay-search-title {
            display: flex;
            align-items: center;
            gap: 14px;
            padding-bottom: 17px;
            margin-bottom: 18px;
            border-bottom: 1px solid var(--line)
        }

        .stay-search-title>div {
            width: 48px;
            height: 48px;
            display: grid;
            place-items: center;
            border-radius: 13px;
            background: #f5e8d4;
            color: var(--gold);
            font-size: 20px
        }

        .stay-search-title>span,
        .stay-search-title small,
        .stay-search-title strong {
            display: block
        }

        .stay-search-title small {
            color: var(--muted)
        }

        .stay-search-title strong {
            font-size: 18px
        }

        .stay-search-form {
            display: grid;
            grid-template-columns: 1.7fr 1fr auto;
            align-items: end;
            gap: 14px
        }

        .stay-form-group label {
            display: block;
            margin-bottom: 6px;
            color: var(--muted);
            font-size: 12px
        }

        .stay-input-wrap,
        .stay-select-wrap {
            height: 52px;
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 0 16px;
            border: 1px solid var(--line);
            border-radius: 11px;
            background: #fffdfa
        }

        .stay-input-wrap:focus-within,
        .stay-select-wrap:focus-within {
            border-color: var(--gold)
        }

        .stay-input-wrap>i,
        .stay-select-wrap>i {
            color: var(--gold)
        }

        .stay-input-wrap input,
        .stay-select-wrap select {
            width: 100%;
            height: 100%;
            border: 0;
            outline: 0;
            background: transparent
        }

        .stay-select-wrap .chosen-container {
            flex: 1;
            min-width: 0
        }

        .stay-select-wrap .chosen-choices {
            min-height: 42px !important;
            border: 0 !important;
            background: none !important;
            box-shadow: none !important
        }

        .stay-search-button {
            height: 52px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 9px;
            padding: 0 32px;
            border: 0;
            border-radius: 11px;
            background: var(--terracotta);
            color: #fff;
            font-weight: 700;
            transition: .22s
        }

        .stay-search-button:hover {
            transform: translateY(-2px);
            background: #a75132
        }

        .stay-category-section {
            padding: 34px 0 5px
        }

        .stay-category-tabs {
            display: flex;
            justify-content: center;
            gap: 9px;
            overflow-x: auto;
            scrollbar-width: none
        }

        .stay-category-tabs::-webkit-scrollbar {
            display: none
        }

        .stay-category-tab {
            flex: 0 0 auto;
            min-height: 50px;
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 0 18px;
            border: 1px solid var(--line);
            border-radius: 999px;
            background: #fff;
            color: #606861;
            transition: .22s
        }

        .stay-category-tab i {
            color: var(--gold)
        }

        .stay-category-tab:hover,
        .stay-category-tab.active {
            border-color: var(--green);
            background: var(--green);
            color: #fff
        }

        .stay-category-tab:hover i,
        .stay-category-tab.active i {
            color: var(--gold-2)
        }

        .stay-section {
            padding: 75px 0 90px
        }

        .stay-section-heading {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 25px;
            margin-bottom: 30px
        }

        .stay-section-heading>div:first-child>span,
        .stay-map-content>span,
        .stay-travel-box span {
            color: var(--gold);
            font-size: 10px;
            font-weight: 800;
            letter-spacing: .18em
        }

        .stay-section-heading h2 {
            margin: 5px 0 0;
            font-size: clamp(31px, 3vw, 43px)
        }

        .stay-section-heading p {
            margin: 4px 0 0;
            color: var(--muted)
        }

        .stay-results-tools {
            display: flex;
            align-items: center;
            gap: 12px
        }

        .stay-results-tools>span {
            color: var(--muted);
            font-size: 12px
        }

        .stay-results-tools select {
            height: 42px;
            padding: 0 32px 0 12px;
            border: 1px solid var(--line);
            border-radius: 10px;
            background: #fff
        }

        .stay-hotel-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 20px
        }

        .stay-hotel-card {
            overflow: hidden;
            border: 1px solid #eee7dc;
            border-radius: 18px;
            background: #fff;
            box-shadow: 0 8px 25px rgba(25, 40, 30, .05);
            transition: .28s
        }

        .stay-hotel-card:hover {
            transform: translateY(-6px);
            box-shadow: var(--shadow)
        }

        .stay-hotel-media {
            position: relative
        }

        .stay-hotel-image {
            position: relative;
            display: block;
            height: 230px;
            overflow: hidden
        }

        .stay-hotel-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: .45s
        }

        .stay-hotel-card:hover .stay-hotel-image img {
            transform: scale(1.045)
        }

        .stay-recommended-badge {
            position: absolute;
            top: 14px;
            left: 14px;
            padding: 6px 10px;
            border-radius: 999px;
            background: var(--terracotta);
            color: #fff;
            font-size: 9px;
            font-weight: 700
        }

        .stay-favorite {
            position: absolute;
            z-index: 2;
            top: 14px;
            right: 14px;
            width: 38px;
            height: 38px;
            border: 0;
            border-radius: 50%;
            background: rgba(255, 255, 255, .93);
            color: #39423d
        }

        .stay-favorite:hover,
        .stay-favorite.active {
            background: var(--terracotta);
            color: #fff
        }

        .stay-hotel-content {
            padding: 18px
        }

        .stay-hotel-type {
            color: var(--gold);
            font-size: 10px;
            font-weight: 700
        }

        .stay-hotel-content h3 {
            min-height: 48px;
            margin: 6px 0;
            font-size: 17px;
            line-height: 1.4
        }

        .stay-hotel-location {
            color: var(--muted);
            font-size: 11px
        }

        .stay-hotel-location i {
            color: var(--gold)
        }

        .stay-hotel-description {
            height: 42px;
            overflow: hidden;
            margin-top: 8px;
            color: var(--muted);
            font-size: 11px
        }

        .stay-hotel-description p {
            margin: 0
        }

        .stay-facilities {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
            min-height: 22px;
            margin-top: 9px
        }

        .stay-facilities span {
            padding: 3px 7px;
            border-radius: 999px;
            background: var(--cream);
            color: var(--muted);
            font-size: 9px
        }

        .stay-hotel-footer {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 10px;
            margin-top: 15px;
            padding-top: 14px;
            border-top: 1px solid var(--line)
        }

        .stay-price small,
        .stay-price strong {
            display: block
        }

        .stay-price small {
            color: var(--muted);
            font-size: 9px
        }

        .stay-price strong {
            color: var(--terracotta);
            font-size: 17px
        }

        .stay-price span {
            color: var(--gold);
            font-weight: 700
        }

        .stay-hotel-footer>a {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            color: var(--terracotta);
            font-size: 10px;
            font-weight: 700;
            white-space: nowrap
        }

        .stay-empty {
            display: none;
            padding: 75px 20px;
            text-align: center
        }

        .stay-empty.show {
            display: block
        }

        .stay-empty>span {
            width: 76px;
            height: 76px;
            display: grid;
            place-items: center;
            margin: 0 auto 17px;
            border-radius: 50%;
            background: var(--cream);
            color: var(--gold);
            font-size: 27px
        }

        .stay-empty h3 {
            margin: 0
        }

        .stay-empty p {
            color: var(--muted)
        }

        .stay-empty button {
            padding: 11px 18px;
            border: 0;
            border-radius: 10px;
            background: var(--green);
            color: #fff
        }

        .stay-map-section {
            padding: 10px 0 90px
        }

        .stay-map-card {
            display: grid;
            grid-template-columns: 1fr 1.2fr;
            min-height: 420px;
            overflow: hidden;
            border-radius: 24px;
            background: var(--navy);
            box-shadow: var(--shadow-lg)
        }

        .stay-map-content {
            padding: 55px;
            color: #fff
        }

        .stay-map-content>span {
            color: var(--gold-2)
        }

        .stay-map-content h2 {
            margin: 8px 0 13px;
            font-size: 38px
        }

        .stay-map-content p {
            max-width: 450px;
            color: rgba(255, 255, 255, .68)
        }

        .stay-map-content>a {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-top: 12px;
            padding: 12px 17px;
            border-radius: 10px;
            background: var(--gold);
            color: #fff;
            font-weight: 700
        }

        .stay-fake-map {
            position: relative;
            overflow: hidden;
            background: linear-gradient(135deg, #e9e1d2, #f9f4ea)
        }

        .stay-fake-map:after {
            content: "";
            position: absolute;
            width: 260px;
            height: 260px;
            right: -40px;
            top: -60px;
            border-radius: 50%;
            background: rgba(63, 98, 69, .12)
        }

        .stay-road {
            position: absolute;
            z-index: 1;
            height: 8px;
            border: 2px solid #fff;
            border-radius: 999px;
            background: #d1c5b2;
            transform-origin: left
        }

        .road-one {
            width: 85%;
            top: 28%;
            left: 4%;
            transform: rotate(25deg)
        }

        .road-two {
            width: 72%;
            top: 65%;
            left: 10%;
            transform: rotate(-18deg)
        }

        .road-three {
            width: 65%;
            top: 8%;
            left: 52%;
            transform: rotate(78deg)
        }

        .stay-map-pin {
            position: absolute;
            z-index: 2;
            width: 48px;
            height: 48px;
            display: grid;
            place-items: center;
            border: 5px solid rgba(255, 255, 255, .9);
            border-radius: 50% 50% 50% 0;
            background: var(--terracotta);
            color: #fff;
            box-shadow: 0 8px 18px rgba(11, 36, 48, .24);
            transform: rotate(-45deg)
        }

        .stay-map-pin i {
            transform: rotate(45deg)
        }

        .pin-one {
            top: 18%;
            left: 23%
        }

        .pin-two {
            top: 53%;
            left: 58%;
            background: var(--green)
        }

        .pin-three {
            top: 23%;
            right: 14%;
            background: var(--gold)
        }

        .pin-four {
            bottom: 11%;
            left: 18%;
            background: #3d7184
        }

        .stay-travel-cta {
            padding: 0 0 90px
        }

        .stay-travel-box {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 30px;
            padding: 42px 48px;
            border-radius: 22px;
            background: linear-gradient(120deg, var(--terracotta), #8f452e);
            color: #fff
        }

        .stay-travel-box span {
            color: #f2cf94
        }

        .stay-travel-box h2 {
            margin: 6px 0;
            font-size: 32px
        }

        .stay-travel-box p {
            margin: 0;
            color: rgba(255, 255, 255, .76)
        }

        .stay-travel-box>a {
            flex: 0 0 auto;
            display: inline-flex;
            align-items: center;
            gap: 9px;
            padding: 14px 19px;
            border-radius: 11px;
            background: #fff;
            color: var(--terracotta);
            font-weight: 800
        }

        @media(max-width:1180px) {
            .stay-hotel-grid {
                grid-template-columns: repeat(3, 1fr)
            }
        }

        @media(max-width:960px) {
            .stay-search-form {
                grid-template-columns: 1fr 1fr
            }

            .stay-search-button {
                grid-column: 1/-1
            }

            .stay-category-tabs {
                justify-content: flex-start
            }

            .stay-hotel-grid {
                grid-template-columns: repeat(2, 1fr)
            }

            .stay-map-card {
                grid-template-columns: 1fr
            }

            .stay-fake-map {
                min-height: 310px
            }
        }

        @media(max-width:680px) {
            .stay-hero {
                background-position: 58% center
            }

            .stay-search-section {
                margin-top: -45px
            }

            .stay-search-panel {
                padding: 20px
            }

            .stay-search-form {
                grid-template-columns: 1fr
            }

            .stay-search-button {
                grid-column: auto
            }

            .stay-section {
                padding: 58px 0 70px
            }

            .stay-section-heading {
                align-items: flex-start;
                flex-direction: column
            }

            .stay-results-tools {
                width: 100%;
                align-items: stretch;
                flex-direction: column
            }

            .stay-results-tools select {
                width: 100%
            }

            .stay-hotel-grid {
                grid-template-columns: 1fr
            }

            .stay-hotel-card {
                display: grid;
                grid-template-columns: 42% 58%
            }

            .stay-hotel-media,
            .stay-hotel-image {
                height: 100%;
                min-height: 260px
            }

            .stay-hotel-content {
                padding: 15px
            }

            .stay-hotel-content h3 {
                min-height: 0
            }

            .stay-map-content {
                padding: 30px 24px
            }

            .stay-map-content h2 {
                font-size: 29px
            }

            .stay-travel-box {
                align-items: flex-start;
                flex-direction: column;
                padding: 30px 24px
            }

            .stay-travel-box h2 {
                font-size: 27px
            }
        }

        @media(max-width:460px) {
            .stay-hotel-card {
                display: block
            }

            .stay-hotel-media,
            .stay-hotel-image {
                height: 220px;
                min-height: 0
            }

            .stay-facilities {
                min-height: 0
            }
        }
        .stay-manage-order-button{border:0;border-radius:999px;background:#edf6f2;color:#075f59;padding:9px 15px;font-weight:700;cursor:pointer;white-space:nowrap}.stay-manage-order-button:hover{background:#d6eee6}
        .stay-order-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;background:rgba(5,25,31,.66);padding:18px}.stay-order-modal.open{display:flex}.stay-order-dialog{display:flex;flex-direction:column;width:min(1100px,100%);height:min(90vh,900px);overflow:hidden;background:#fff;border-radius:24px;box-shadow:0 24px 80px rgba(0,0,0,.3)}.stay-order-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;background:#07594f;color:#fff;flex:none}.stay-order-head h2{margin:0;font-size:1.55rem}.stay-order-head small{display:block;margin-top:3px;opacity:.9}.stay-order-close{border:0;background:transparent;color:#fff;font-size:2rem;line-height:1;cursor:pointer}.stay-order-body{padding:22px 28px;overflow:auto;flex:1;min-height:0}.stay-order-grid{display:flex;flex-direction:column;gap:16px}.stay-order-type-card{border:1px solid #d9e4df;border-radius:14px;padding:15px;background:#fbfdfc}.stay-order-type-card[draggable="true"]{cursor:grab}.stay-order-type-card h3{display:flex;align-items:center;gap:9px;margin:0 0 12px;color:#07594f;font-size:1.12rem}.stay-order-type-card h3 i{color:#c7982d;font-size:.9rem}.stay-order-subtitle{font-size:.78rem;color:#6b7772;margin:7px 0 4px}.stay-order-list{min-height:18px;display:flex;flex-direction:column;gap:6px;padding:2px;border-radius:8px}.stay-order-list:empty{min-height:36px;border:1px dashed #d8e4df}.stay-order-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #c9ddd6;border-radius:9px;background:#f2f8f5;color:#244b45;font-size:.9rem;cursor:grab}.stay-order-item i{color:#78968d}.stay-order-item:hover{background:#e8f4ef}.stay-order-item.is-dragging,.stay-order-type-card.is-dragging{opacity:.45}.stay-order-list .drag-over{border-color:#c7982d;background:#fff7e2}.stay-order-status{min-height:22px;margin-top:12px;color:#07594f;font-size:.9rem}.stay-order-foot{padding:14px 28px;border-top:1px solid #edf0ee;flex:none;background:#fff;position:relative;z-index:2}.stay-order-save{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;background:#c7982d;color:#102b2e;padding:12px 20px;font-weight:800;cursor:pointer;box-shadow:0 5px 14px rgba(199,152,45,.24);white-space:nowrap}.stay-order-save:hover{background:#d8ab3d;transform:translateY(-1px)}.stay-order-save:disabled{opacity:.6;cursor:wait;transform:none}.modal-open{overflow:hidden}
        .stay-order-save{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;font-weight:800;white-space:nowrap;box-shadow:0 5px 14px rgba(199,152,45,.24)}.stay-order-save:hover{background:#d8ab3d;transform:translateY(-1px)}
        .stay-order-list{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:6px}.stay-order-item{display:inline-flex;flex:0 0 auto;width:max-content;max-width:100%;touch-action:none;user-select:none}.stay-order-item span{overflow-wrap:anywhere}.stay-order-item.is-dragging{pointer-events:none;cursor:grabbing}.stay-order-badge{display:inline-flex;align-items:center;border-radius:999px;background:#c7982d;color:#17383a;padding:3px 8px;font-size:.72rem;font-weight:800;white-space:nowrap}.stay-order-placeholder{border:1px dashed #c7982d;border-radius:9px;background:#fff7e2;min-width:70px;opacity:.8}
        @media(max-width:760px){.stay-order-grid{grid-template-columns:1fr}.stay-order-head,.stay-order-body,.stay-order-foot{padding-left:16px;padding-right:16px}.stay-results-tools{flex-wrap:wrap}}
