/* Hotel search sidebar. Layout is isolated from legacy shared filter rules. */
#appHotel .hotel-search-sidebar {
    --hs-accent: var(--mainColor, #2563eb);
    --hs-soft: color-mix(in srgb, var(--hs-accent) 6%, white);
    --hs-ink: #29384b;
    --hs-muted: #84909e;
    --hs-line: #e5eaf0;
    direction: rtl;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}
#appHotel .hotel-search-sidebar *, #appHotel .hotel-search-sidebar *::before, #appHotel .hotel-search-sidebar *::after { box-sizing: border-box; }
#appHotel .hotel-search-sidebar > .currency-gds { position: relative; display: block; width: 100%; margin: 0 0 12px; padding: 12px; border: 1px solid var(--hs-line); border-radius: 12px; background: #fff; color: var(--hs-ink); box-shadow: 0 3px 12px #25313e06; z-index: 20; }
#appHotel .hotel-search-sidebar .currency-inner { display: flex; align-items: center; gap: 8px; min-height: 24px; }
#appHotel .hotel-search-sidebar .currency-inner img { width: 26px; height: 18px; margin: 0; border-radius: 3px; object-fit: cover; }
#appHotel .hotel-search-sidebar .TitleDefaultCurrency { color: var(--hs-ink); font-size: 12px; }
#appHotel .hotel-search-sidebar .currency-gds .change-currency { top: calc(100% + 5px); padding: 6px; border: 1px solid var(--hs-line); border-radius: 12px; background: #fff; color: var(--hs-ink); box-shadow: 0 8px 24px #25313e15; }
#appHotel .hotel-search-sidebar .change-currency-inner { padding: 0; border: 0; background: #fff; }
#appHotel .hotel-search-sidebar .change-currency-item { display: flex; align-items: center; gap: 8px; padding: 9px; border-radius: 7px; background: #fff; color: var(--hs-ink); }
#appHotel .hotel-search-sidebar .change-currency-item:hover { background: var(--hs-soft); }
#appHotel .hotel-search-sidebar > .filterBox { margin: 0 0 16px; border: 1px solid var(--hs-line); border-radius: 16px; background: #fff; box-shadow: 0 3px 12px #25313e06; overflow: visible; }
#appHotel .hotel-search-sidebar .filtertip_hotel { position: relative; isolation: isolate; overflow: hidden; height: auto; margin: 0; padding: 12px 14px; border: 0; border-radius: 15px 15px 0 0; background: linear-gradient(115deg, var(--hs-accent), color-mix(in srgb, var(--hs-accent) 72%, #162331)) !important; color: #fff; text-align: right; }
#appHotel .hotel-search-sidebar .filtertip_hotel::before { content: ''; position: absolute; z-index: -1; inset: 0 auto 0 0; width: 66%; background: url('../images/hotel-sidebar-dusk.png') left center / auto 155% no-repeat; opacity: .55; mask-image: linear-gradient(to right, #000 20%, transparent 100%); -webkit-mask-image: linear-gradient(to right, #000 20%, transparent 100%); pointer-events: none; }
#appHotel .hotel-search-sidebar .filtertip_hotel::after { display: none; }
#appHotel .hotel-search-sidebar .filtertip_hotel > .parent-mobile--new { display: grid; grid-template-columns: 36px minmax(0, 1fr); align-items: center; gap: 4px 9px; width: 100%; }
#appHotel .hotel-search-sidebar .hotel-sidebar-heading-icon { grid-row: 1; display: grid; place-items: center; width: 36px; height: 38px; border: 1px solid #ffffff55; border-radius: 10px; background: #ffffff15; color: #fff; }
#appHotel .hotel-search-sidebar .hotel-sidebar-heading-icon svg { width: 30px; height: 30px; }
#appHotel .hotel-search-sidebar .city-name-sidebar-result-hotel { grid-column: 2; margin: 0; color: #fff; font-size: 14px; font-weight: 600; line-height: 1.6; }
#appHotel .hotel-search-sidebar .hotel-sidebar-heading-label { display: block; color: #ffffffe0; font-size: 10px; font-weight: 400; }
#appHotel .hotel-search-sidebar .hotel-city-name { display: block; color: #fff; font-size: 17px; font-weight: 700; line-height: 1.5; }
#appHotel .hotel-search-sidebar .silence_span { grid-column: 2; justify-self: start; display: inline-flex; align-items: center; gap: 4px; width: auto; margin: 0; padding: 3px 9px; border: 1px solid #ffffff25; border-radius: 20px; background: #ffffff15; color: #fff; font-size: 10px; line-height: 1.8; text-align: right; }
#appHotel .hotel-search-sidebar .silence_span b { font-size: 12px; font-weight: 700; }
#appHotel .hotel-search-sidebar .filtertip_hotel_researh { width: 100%; margin: 0; padding: 16px; border: 0; border-top: 1px solid var(--hs-line); border-radius: 0 0 15px 15px; background: #fff; }
#appHotel .hotel-search-sidebar .search-wrapper { display: flex; flex-flow: column nowrap; align-items: stretch; gap: 12px; width: 100%; margin: 0; padding: 0; }
#appHotel .hotel-search-sidebar .form-hotel-item { float: none; flex: none; width: 100%; max-width: none; height: auto; margin: 0 !important; padding: 0; }
#appHotel .hotel-search-sidebar .inputSearchForeign-box { float: none; width: 100%; margin: 0; padding: 0; }
#appHotel .hotel-search-sidebar .s-u-in-out-wrapper,
#appHotel .hotel-search-sidebar .form-hotel-item > .input { position: relative; display: flex; align-items: center; float: none; width: 100%; min-width: 0; height: 44px; margin: 0; padding: 0; border: 1px solid #dce3eb; border-radius: 10px; background: #fff; }
#appHotel .hotel-search-sidebar .inputSearchForeign,
#appHotel .hotel-search-sidebar .form-hotel-item .input > input { position: static; flex: 1; width: 100%; min-width: 0; height: 42px; margin: 0; padding: 10px; border: 0; border-radius: 10px; background: transparent; color: var(--hs-ink); font-family: inherit; font-size: 12px; line-height: 22px; }
#appHotel .hotel-search-sidebar .inputSearchForeign.has-night-badge { padding-inline-end: 62px; }
#appHotel .hotel-search-sidebar .inputSearchForeign-box:focus-within { position: relative; z-index: 30; }
#appHotel .hotel-search-sidebar #listSearchCity { position: absolute; z-index: 40; top: calc(100% + 5px); left: 0; right: 0; width: 100%; max-height: 250px; margin: 0; padding: 5px; overflow-y: auto; overscroll-behavior: contain; border: 1px solid var(--hs-line); border-radius: 10px; background: #fff; box-shadow: 0 8px 24px #25313e18; list-style: none; }
#appHotel .hotel-search-sidebar #listSearchCity li { display: block; width: 100%; margin: 0; padding: 0; border: 0; }
#appHotel .hotel-search-sidebar #listSearchCity button { display: block; width: 100%; min-height: 40px; padding: 9px 12px; border: 0; border-radius: 6px; background: #fff; color: var(--hs-ink); font-family: inherit; font-size: 12px; text-align: right; cursor: pointer; }
#appHotel .hotel-search-sidebar #listSearchCity button:hover, #appHotel .hotel-search-sidebar #listSearchCity button:focus-visible { background: var(--hs-soft); color: var(--hs-accent); }
#appHotel .hotel-search-sidebar input::placeholder { color: var(--hs-muted); opacity: 1; font-size: 11px; }
#appHotel .hotel-search-sidebar .night-badge { position: absolute; display: inline-block; z-index: 1; right: auto; left: 8px; top: 50%; margin: 0; padding: 3px 7px; border-radius: 6px; background: var(--hs-accent) !important; color: #fff !important; font-size: 10px; line-height: 20px; white-space: nowrap; transform: translateY(-50%); }
#appHotel .hotel-search-sidebar .parent-box-pageTwo--new { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; width: 100%; margin: 0; }
#appHotel .hotel-search-sidebar .parent-box-pageTwo--new > .form-hotel-item { grid-area: auto; display: block; min-width: 0; }
#appHotel .hotel-search-sidebar .hotel-sidebar-field-label { display: block; margin: 0 0 6px; color: #667589; font-size: 10px; font-weight: 500; }
#appHotel .hotel-search-sidebar .parent-box-pageTwo--new .input > i { display: none; }
#appHotel .hotel-search-sidebar .parent-box-pageTwo--new .input > input { padding: 8px 5px; direction: ltr; text-align: center; font-size: 11px; font-variant-numeric: tabular-nums; }
#appHotel .hotel-search-sidebar .parent-flex-night--new { display: none; }
#appHotel .hotel-search-sidebar .select2-container { width: 100% !important; max-width: 100%; }
#appHotel .hotel-search-sidebar .select2-selection--single { height: 44px; margin: 0; border: 1px solid #dce3eb; border-radius: 10px; background: #fff; }
#appHotel .hotel-search-sidebar .select2-container .select2-selection--single .select2-selection__rendered { width: 100%; padding: 0 10px 0 28px; color: var(--hs-ink); font-size: 12px; line-height: 42px; text-align: right; }
#appHotel .hotel-search-sidebar .select2-selection__arrow { top: 0; height: 42px; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests { border: 1px solid #dce3eb; border-radius: 10px; background: #fff; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests > summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 10px 12px; color: var(--hs-ink); font-size: 12px; font-weight: 500; list-style: none; cursor: pointer; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests > summary::-webkit-details-marker { display: none; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests > summary span { display: inline-flex; align-items: center; gap: 8px; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests > summary > i { color: var(--hs-muted); font-size: 10px; transition: transform .18s; }
#appHotel .hotel-search-sidebar .hotel-sidebar-guests[open] > summary > i { transform: rotate(180deg); }
#appHotel .hotel-search-sidebar .box-foreign-hotel-room-item { margin: 0; padding: 10px; border: 0; border-top: 1px solid var(--hs-line); border-radius: 0 0 10px 10px; background: #fafbfd; }
#appHotel .hotel-search-sidebar .myroom-hotel, #appHotel .hotel-search-sidebar .myroom-hotel-item { width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
#appHotel .hotel-search-sidebar .myroom-hotel-item + .myroom-hotel-item { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--hs-line); }
#appHotel .hotel-search-sidebar .myroom-hotel-item-title { margin: 0 0 8px; padding: 0; border: 0; color: #718095; font-size: 10px; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-info { padding: 0; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad { display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: center; gap: 6px; margin: 0; padding: 7px 0; border: 0; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad > span { color: var(--hs-ink); font-size: 11px; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad > span i { display: block; padding: 0; color: var(--hs-muted); font-size: 9px; font-style: normal; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad > div { display: flex; flex-shrink: 0; align-items: center; gap: 4px; margin: 0; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad div input { width: 22px; height: 28px; margin: 0; padding: 0; border: 0; background: transparent; color: var(--hs-ink); font-size: 12px; text-align: center; }
#appHotel .hotel-search-sidebar .myroom-hotel-item-tedad div > i { display: grid; place-items: center; width: 27px; height: 27px; margin: 0;border-radius: 7px; color: var(--hs-accent); font-size: 10px; cursor: pointer; }
#appHotel .hotel-search-sidebar .form-hotel-item-searchBox-btn > span { display: none; }
#appHotel .hotel-search-sidebar .form-hotel-item-searchBox-btn > .input { height: auto; border: 0; }
#appHotel .hotel-search-sidebar #searchHotelLocal { display: block; width: 100%; min-height: 44px; margin: 0; padding: 10px; border: 0; border-radius: 10px; background: var(--hs-accent); color: #fff; font-family: inherit; font-size: 13px; font-weight: 700; line-height: 1.8; cursor: pointer; }
#appHotel .hotel-search-sidebar > .hotels_filter_search { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
#appHotel .hotel-search-sidebar .hotels_filter_search > .filtertip-searchbox { width: 100%; margin: 0 0 12px; padding: 16px; border: 1px solid var(--hs-line); border-radius: 14px; background: #fff; box-shadow: 0 3px 12px #25313e05; }
#appHotel .hotel-search-sidebar .filter-title { display: flex; align-items: center; gap: 5px; min-height: 24px; margin: 0 0 12px; padding: 0; border: 0; color: var(--hs-ink); font-size: 12px; font-weight: 700; line-height: 1.8; }
#appHotel .hotel-search-sidebar .filter-title::after { content: ''; position: static; display: block; flex: 0 0 7px; width: 7px; height: 7px; margin: 0 auto 0 2px; border: 0; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; background: none; color: var(--hs-muted); transform: rotate(225deg); }
#appHotel .hotel-search-sidebar .hidden_filter .filter-title::after { transform: rotate(45deg); }
#appHotel .hotel-search-sidebar .filter-title::before { display: none; }
#appHotel .hotel-search-sidebar .filter-content { position: relative; margin: 0; padding: 0; }
#appHotel .hotel-search-sidebar #inputSearchHotel { width: 100%; height: 40px; margin: 0; padding: 8px 10px 8px 30px; border: 1px solid #edf0f4; border-radius: 9px; background: #f5f7fa; color: var(--hs-ink); font-size: 11px; }
#appHotel .hotel-search-sidebar .form-hotel-item-searchHotelName-i { top: 13px; left: 9px; margin: 0; color: var(--hs-muted); font-size: 13px; }
#appHotel .hotel-search-sidebar .filter-price-text { display: flex; gap: 6px; margin: 0 0 20px; }
#appHotel .hotel-search-sidebar .filter-price-text > span { flex: 1; min-width: 0; margin: 0; padding: 8px 2px; border: 1px solid var(--hs-line); border-radius: 8px; background: #fafbfd; color: #526176; font-size: 10px; font-weight: 500; text-align: center; }
#appHotel .hotel-search-sidebar .filter-price-text i { font-style: normal; }
#appHotel .hotel-search-sidebar #slider-range { height: 5px; margin: 0 10px 10px; padding: 0; border: 0; border-radius: 10px; background: #e9edf2; box-shadow: none; }
#appHotel .hotel-search-sidebar .hotel-price-selection { background: var(--hs-accent); }
#appHotel .hotel-search-sidebar #slider-range .hotel-price-handle { width: 20px; height: 20px; border: 2px solid var(--hs-accent); border-radius: 50%; background: #fff; box-shadow: 0 2px 5px #25313e15; }
#appHotel .hotel-search-sidebar .raste-item { display: flex; align-items: center; gap: 6px; min-height: 35px; margin: 0; padding: 6px 0; border: 0; }
#appHotel .hotel-search-sidebar .FilterHoteltypeName { margin: 0; color: #526176; font-size: 11px; line-height: 1.8; }
#appHotel .hotel-search-sidebar .FilterHoteltype + label::before { width: 17px; height: 17px; flex-shrink: 0; margin-left: 7px; border: 1px solid #b4bfcd; border-radius: 4px; }
#appHotel .hotel-search-sidebar .FilterHoteltype:checked + label::before { border-color: var(--hs-accent); background: var(--hs-soft); }
#appHotel .hotel-search-sidebar .FilterHoteltype:checked + label::after { content: '✓'; top: 1px; right: 2px; color: var(--hs-accent); font-size: 13px; line-height: 18px; }
#appHotel .hotel-search-sidebar .hotel-star-filter-box { float: none; width: auto; height: auto; margin-right: auto; margin-left: 0; }
#appHotel .hotel-search-sidebar :focus-visible { outline: 2px solid var(--hs-accent); outline-offset: 3px; }
#appHotel .hotel-search-sidebar .hotel-sidebar-filter-heading { display: none; }
.hotel-sidebar-backdrop { display: none; }
@media (min-width: 992px) {
    #appHotel .hotel-search-sidebar .filtertip_hotel_researh { display: block; }
}
@media (max-width: 991px) {
    #appHotel .hotel-search-sidebar .search-wrapper{ padding:10px; }
    #appHotel > .col-lg-3 { min-width: 0; }
    #appHotel .hotel-search-sidebar { width: 100%; margin-bottom: 12px; }
    #appHotel .hotel-search-sidebar > .filterBox { margin-bottom: 12px; }
    #appHotel .hotel-search-sidebar .filtertip_hotel { padding: 12px; }
    #appHotel .hotel-search-sidebar .filtertip_hotel_researh { display: none; padding: 14px; }
    #appHotel .hotel-search-sidebar.hotel-search-open .filtertip_hotel_researh { display: block !important; }
    #appHotel .hotel-search-sidebar .parent-box-pageTwo--new { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #appHotel .hotel-search-sidebar .parent-mobile--new { width: 100%; background: transparent; border: 0; box-shadow: none; }
    #appHotel .hotel-search-sidebar .parent-mobile--filter { display: flex; justify-content: space-between; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #ffffff2b; }
    #appHotel .hotel-search-sidebar .research_Hotel, #appHotel .hotel-search-sidebar .filter_search_holel { position: static; width: auto; height: auto; margin: 0; padding: 8px 12px; border: 1px solid var(--hs-line); border-radius: 9px; background: #fff; color: var(--hs-accent); font-size: 12px; }
    #appHotel .hotel-search-sidebar .parent-mobile--filter > div { display: flex !important; align-items: center; justify-content: center; flex: 1; max-width: none; min-height: 42px; line-height: 1.8; text-align: center; }
    #appHotel .hotel-search-sidebar .research_Hotel::before { display: none; }
    #appHotel .hotel-search-sidebar .research_Hotel[aria-expanded="true"] { background: var(--hs-soft); border-color: var(--hs-accent); }
    #appHotel .hotel-search-sidebar .filter_search_holel { display: flex; align-items: center; justify-content: center; gap: 6px; }
    #appHotel .hotel-search-sidebar .filter_search_holel svg { width: 14px; height: 14px; fill: var(--hs-accent); }
    #appHotel .hotel-search-sidebar > .hotels_filter_search { position: fixed; inset: 0 0 0 auto; z-index: 100021; width: min(100%, 420px); max-width: 85vw; height: 100%; height: 100dvh; margin: 0; padding: 0 12px max(20px, env(safe-area-inset-bottom)); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; border: 0; border-radius: 0; background: #f6f8fb; box-shadow: none; opacity: 0; visibility: hidden; pointer-events: none; transform: translateX(100%); transition: transform .22s ease, opacity .22s ease, visibility .22s; }
    #appHotel .hotel-search-sidebar.hotel-filters-open > .hotels_filter_search { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(0); }
    #appHotel .hotel-search-sidebar .hotel-sidebar-filter-heading { position: sticky; top: 0; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 -12px 14px; padding: max(12px, env(safe-area-inset-top)) 16px 12px; border-bottom: 1px solid var(--hs-line); background: #fff; color: var(--hs-ink); font-size: 15px; }
    #appHotel .hotel-search-sidebar .hotel-sidebar-filter-heading .s-u-close-filter { position: static; display: grid; place-items: center; width: 40px; height: 40px; margin: 0; padding: 0; border: 1px solid var(--hs-line); border-radius: 10px; background: #f6f8fb; box-shadow: none; color: var(--hs-ink); font-family: inherit; font-size: 25px; line-height: 1; cursor: pointer; }
    .hotel-sidebar-backdrop.is-visible { position: fixed; inset: 0; z-index: 100020; display: block; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; background: #17263866; backdrop-filter: blur(3px); }
}
@media (prefers-reduced-motion: reduce) {
    #appHotel .hotel-search-sidebar .hotel-sidebar-guests > summary > i { transition: none; }
    #appHotel .hotel-search-sidebar > .hotels_filter_search { transition: none; }
}
