.filter-modal{width:400px;max-width:90vw}.accordion-collapse.collapse.show{background:#fcfcfc}.custom-accordion .accordion-button{background-color:transparent;box-shadow:none;padding:0}.custom-accordion .accordion-button:after{margin-right:auto;margin-left:0}.filter-item-btn{padding:.5rem 1rem;border:1px solid #dee2e6;border-radius:20px;gap:.5rem;flex-direction:row}[dir=rtl] .filter-item-btn{flex-direction:row-reverse}.filter-item-btn:hover{background-color:#f8f9fa}.filter-item-btn.active:hover{background-color:#c2ffe6}.checkbox-icon{color:#419672}.filter-input{border-radius:8px;border:1px solid #dee2e6}.filter-input:focus{border-color:#4196731f;box-shadow:0 0 0 .25rem rgba(13,253,173,0)}[dir=rtl] .custom-accordion .accordion-button:after{margin-left:auto;margin-right:0}.custom-accordion .accordion-button:not(.collapsed){color:#419672;box-shadow:none}.category-title{color:#333}.category-badge{font-size:12px;padding:4px 8px}.filter-items-container{padding:8px}.filter-item-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;font-size:14px;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:6px;transition:all .2s ease;cursor:pointer}.filter-item-btn:hover{background-color:#f1f3f5;border-color:#adb5bd}.filter-item-btn.active{background-color:#ecfdf6;border-color:#419672;color:#419672;font-weight:500}.filter-item-label{flex-grow:1}.filter-input{padding:10px;font-size:14px;border-radius:6px;border:1px solid #ced4da}.filter-label{font-size:14px;color:#333;margin-bottom:8px}.apply-filter-btn{padding:10px;font-size:16px;border-radius:6px}.clear-filter-btn{font-size:16px}.search-modal{width:400px;max-width:90vw}.property-thumbnail{width:50px;height:50px;border-radius:8px;-o-object-fit:cover;object-fit:cover;border:2px solid var(--bs-primary)}.hover-primary:hover{background-color:var(--bs-primary-bg-subtle);cursor:pointer}.icon-container{position:relative;width:50px;height:50px}.icon-container:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px}.filter-modal .offcanvas-header{background-color:#fff;border-bottom:1px solid #fff}.filter-modal .offcanvas-body{padding:0}.custom-accordion .accordion-item{border:none;margin-bottom:8px}.main-category-title{font-weight:600;font-size:14px;color:#343a40}.main-category-badge{background-color:#6c757d!important;font-size:12px;padding:4px 8px}.category-header{background-color:#fcfcfc!important;border-radius:6px;padding:8px 12px;transition:background-color .3s ease}.category-header:hover{background-color:#f3f3f3!important}.category-title{font-weight:500;font-size:14px;color:#495057}.category-badge{background-color:#419672!important;font-size:10px;padding:3px 6px}.category-body{padding:10px 15px}.filter-items-container{display:flex;flex-direction:column;gap:8px}.filter-item-checkbox,.filter-item-radio{display:flex;align-items:center;padding:8px 12px;border-radius:6px;transition:background-color .3s ease}.filter-item-checkbox:hover,.filter-item-radio:hover{background-color:#f8f9fa}.filter-item-label{font-size:14px}.clear-filter-btn{padding:10px;font-size:14px;border-radius:6px;transition:background-color .3s ease,color .3s ease}.clear-filter-btn:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.custom-marker{position:absolute!important;pointer-events:auto!important;-webkit-touch-callout:none!important;-webkit-tap-highlight-color:transparent!important;transform-origin:center bottom!important;will-change:transform!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}.custom-marker,.custom-marker *{user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.custom-marker *{pointer-events:none!important}.custom-marker.guidance-request{z-index:1000!important}.marker-container{position:relative!important;transform-origin:center bottom!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important}.marker-icon,.marker-info,.marker-path,.marker-shadow{pointer-events:none!important}.marker-info{white-space:nowrap!important;z-index:1001!important}.custom-marker,.custom-marker *{-webkit-user-drag:none!important;-khtml-user-drag:none!important;-moz-user-drag:none!important;-o-user-drag:none!important;user-drag:none!important}.custom-marker{contain:layout style paint!important;isolation:isolate!important}@media (max-width:768px){.custom-marker{transform-origin:center bottom!important}.marker-container{position:relative!important}}@supports (-webkit-appearance:none){.custom-marker{-webkit-transform-origin:center bottom!important;-webkit-backface-visibility:hidden!important}}@-moz-document url-prefix(){.custom-marker{-moz-transform-origin:center bottom!important}}.mapboxgl-marker{position:absolute!important}.mapboxgl-marker .custom-marker{position:relative!important;transform:none!important}.reset-markers-button{background-color:#f8f9fa!important;border:1px solid #dee2e6!important;color:#495057!important;transition:all .2s ease!important}.reset-markers-button:hover{background-color:#e9ecef!important;border-color:#adb5bd!important;color:#495057!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px rgba(0,0,0,.1)!important}.city_model_selector{max-width:400px;background:var(--background-elevated);border-left:1px solid var(--border-color);overflow:hidden}.city_model_selector_container{display:flex;flex-direction:column;height:100vh;max-height:100vh;overflow:hidden}.city_model_selector_header{background:var(--background-secondary);border-bottom:1px solid var(--border-color);padding:1rem;flex-shrink:0}.city_model_header_content{display:flex;align-items:center;justify-content:space-between}.city_model_header_title{display:flex;align-items:center;gap:.75rem}.city_model_header_icon{color:var(--primary-color);flex-shrink:0}.city_model_header_text{color:var(--text-color);font-weight:600;margin:0;font-size:1.1rem;transition:color .3s ease}.city_model_close_button{background:var(--background-secondary);border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-color);cursor:pointer;transition:all .3s ease;flex-shrink:0}.city_model_close_button:hover{background:var(--state-hover);color:var(--text-color);transform:scale(1.1)}.city_model_close_button:focus{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_selector_content{flex:1;overflow:hidden;display:flex;flex-direction:column}.city_model_location_view{display:flex;flex-direction:column;height:100%;overflow:hidden}.city_model_search_section{padding:1rem;background:var(--background-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.city_model_search_header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.city_model_search_header_icon{color:var(--primary-color);flex-shrink:0}.city_model_search_header_title{color:var(--text-color);font-weight:600;margin:0;font-size:.95rem;transition:color .3s ease}.city_model_search_input_container{position:relative;display:flex;align-items:center}.city_model_search_input_icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);z-index:2;transition:color .3s ease}.city_model_search_input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:2px solid var(--border-color);border-radius:var(--bs-border-radius-lg);background:var(--background-color);color:var(--text-color);font-size:.9rem;font-weight:500;transition:all .3s ease;box-shadow:none}.city_model_search_input:hover{border-color:var(--hover-border);background:var(--state-hover)}.city_model_search_input:focus{border-color:var(--border-focus);background:var(--background-color);box-shadow:var(--shadow-focus);outline:none!important}.city_model_search_input::-moz-placeholder{color:var(--text-muted);-moz-transition:color .3s ease;transition:color .3s ease}.city_model_search_input::placeholder{color:var(--text-muted);transition:color .3s ease}.city_model_clear_search_btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:var(--background-secondary);border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:all .3s ease;z-index:3}.city_model_clear_search_btn:hover{background:var(--state-hover);color:var(--text-color);transform:translateY(-50%) scale(1.1)}.city_model_clear_search_btn:focus{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_back_section{padding:1rem;background:var(--background-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.city_model_back_button{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-color);cursor:pointer;padding:.5rem;border-radius:var(--bs-border-radius);transition:all .3s ease;margin-bottom:.5rem}.city_model_back_button:hover{background:var(--state-hover);color:var(--primary-color);transform:translateX(-2px)}.city_model_back_button:focus{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_back_text{font-weight:500;font-size:.9rem}.city_model_current_city_title{color:var(--text-color);font-weight:600;margin:0;font-size:.95rem;transition:color .3s ease}.city_model_location_list_container{flex:1;overflow:hidden;display:flex;flex-direction:column}.city_model_location_list{flex:1;overflow-y:auto;padding:.5rem}.city_model_location_item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:var(--background-color);text-align:left;transition:all .3s ease;border-radius:var(--bs-border-radius);margin-bottom:.25rem;color:var(--text-color);cursor:pointer}.city_model_location_item:hover{background:var(--state-hover);transform:translateX(4px);box-shadow:var(--bs-box-shadow-sm)}.city_model_location_item.active{background:var(--state-selected);color:var(--primary-color);border-left:4px solid var(--primary-color);box-shadow:var(--bs-box-shadow-sm)}.city_model_location_item:focus{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_location_item_icon{color:var(--primary-color);flex-shrink:0;transition:color .3s ease}.city_model_location_item_text{font-weight:500;font-size:.9rem;flex:1;transition:color .3s ease}.city_model_loading_state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;height:100%;min-height:200px}.city_model_loading_spinner{width:32px;height:32px;border-top:3px solid var(--border-color);border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.city_model_loading_text{color:var(--text-muted);font-size:.9rem;margin:0;transition:color .3s ease}@keyframes spin{to{transform:rotate(1turn)}}.city_model_empty_state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;height:100%;min-height:200px;text-align:center}.city_model_empty_icon{opacity:.5;margin-bottom:1rem}.city_model_empty_icon,.city_model_empty_text{color:var(--text-muted);transition:color .3s ease}.city_model_empty_text{font-size:.9rem;margin:0}.city_model_selector_footer{padding:1rem;background:var(--background-secondary);border-top:1px solid var(--border-color);flex-shrink:0}.city_model_save_button{width:100%;background:var(--primary-color);border-color:var(--primary-color);color:#fff;font-weight:600;padding:.75rem 1.5rem;border-radius:var(--bs-border-radius-lg);transition:all .3s ease}.city_model_save_button:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-elevated)}.city_model_save_button:focus{box-shadow:var(--shadow-focus);outline:none!important}.city_model_save_button:disabled{background:var(--state-disabled);border-color:var(--state-disabled);color:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}[data-bs-theme=dark] .city_model_selector{background:var(--background-elevated);border-left-color:var(--border-color)}[data-bs-theme=dark] .city_model_selector_header{background:var(--background-secondary);border-bottom-color:var(--border-color)}[data-bs-theme=dark] .city_model_header_text{color:var(--text-color)}[data-bs-theme=dark] .city_model_close_button{background:var(--background-secondary);color:var(--text-color)}[data-bs-theme=dark] .city_model_close_button:hover{background:var(--state-hover);color:var(--text-color)}[data-bs-theme=dark] .city_model_search_section{background:var(--background-secondary);border-bottom-color:var(--border-color)}[data-bs-theme=dark] .city_model_search_header_title{color:var(--text-color)}[data-bs-theme=dark] .city_model_search_input{background:var(--background-color);border-color:var(--border-color);color:var(--text-color)}[data-bs-theme=dark] .city_model_search_input:hover{background:var(--state-hover);border-color:var(--hover-border)}[data-bs-theme=dark] .city_model_search_input:focus{background:var(--background-color);border-color:var(--border-focus)}[data-bs-theme=dark] .city_model_search_input::-moz-placeholder{color:var(--text-muted)}[data-bs-theme=dark] .city_model_search_input::placeholder{color:var(--text-muted)}[data-bs-theme=dark] .city_model_clear_search_btn{background:var(--background-secondary);color:var(--text-muted)}[data-bs-theme=dark] .city_model_clear_search_btn:hover{background:var(--state-hover);color:var(--text-color)}[data-bs-theme=dark] .city_model_back_section{background:var(--background-secondary);border-bottom-color:var(--border-color)}[data-bs-theme=dark] .city_model_back_button{color:var(--text-color)}[data-bs-theme=dark] .city_model_back_button:hover{background:var(--state-hover);color:var(--primary-color)}[data-bs-theme=dark] .city_model_current_city_title{color:var(--text-color)}[data-bs-theme=dark] .city_model_location_item{background:var(--background-color);color:var(--text-color)}[data-bs-theme=dark] .city_model_location_item:hover{background:var(--state-hover)}[data-bs-theme=dark] .city_model_location_item.active{background:var(--state-selected);color:var(--primary-color);border-left-color:var(--primary-color)}[data-bs-theme=dark] .city_model_empty_icon,[data-bs-theme=dark] .city_model_empty_text,[data-bs-theme=dark] .city_model_loading_text{color:var(--text-muted)}[data-bs-theme=dark] .city_model_selector_footer{background:var(--background-secondary);border-top-color:var(--border-color)}[dir=rtl] .city_model_selector{border-left:none;border-right:1px solid var(--border-color)}[dir=rtl] .city_model_search_input_icon{left:auto;right:12px}[dir=rtl] .city_model_search_input{padding:.75rem 2.5rem .75rem 1rem;text-align:right}[dir=rtl] .city_model_clear_search_btn{right:auto;left:8px}[dir=rtl] .city_model_back_button:hover{transform:translateX(2px)}[dir=rtl] .city_model_location_item{text-align:right}[dir=rtl] .city_model_location_item:hover{transform:translateX(-4px)}[dir=rtl] .city_model_location_item.active{border-left:none;border-right:4px solid var(--primary-color)}[dir=rtl] .city_model_location_item_icon{order:2}[dir=rtl] .city_model_location_item_text{order:1}[dir=rtl] .city_model_empty_state,[dir=rtl] .city_model_loading_state{text-align:center}@media (prefers-contrast:high){.city_model_selector{border-left-width:2px}.city_model_location_item{border:1px solid var(--border-color)}.city_model_location_item.active{border-left-width:6px}.city_model_search_input{border-width:3px}.city_model_clear_search_btn,.city_model_close_button{border:1px solid}[dir=rtl] .city_model_selector{border-left:none;border-right-width:2px}[dir=rtl] .city_model_location_item.active{border-left:none;border-right-width:6px}}@media (prefers-reduced-motion:reduce){.city_model_back_button,.city_model_clear_search_btn,.city_model_close_button,.city_model_location_item,.city_model_save_button,.city_model_search_input,.city_model_selector{transition:none}.city_model_back_button:hover,.city_model_clear_search_btn:hover,.city_model_close_button:hover,.city_model_location_item:hover,.city_model_save_button:hover:not(:disabled){transform:none}.city_model_loading_spinner{animation:none}}@media (max-width:576px){.city_model_selector{max-width:100%}.city_model_selector_container{height:100vh}.city_model_location_item{padding:.6rem .8rem}.city_model_search_input{padding:.6rem .8rem .6rem 2.2rem;font-size:.85rem}.city_model_search_input_icon{left:10px}.city_model_clear_search_btn{right:6px}[dir=rtl] .city_model_search_input{padding:.6rem 2.2rem .6rem .8rem}[dir=rtl] .city_model_search_input_icon{left:auto;right:10px}[dir=rtl] .city_model_clear_search_btn{right:auto;left:6px}}.city_model_selector:focus-within{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_location_item:focus-visible{outline:0 solid var(--border-focus)!important;outline-offset:0!important}.city_model_location_list::-webkit-scrollbar{width:6px}.city_model_location_list::-webkit-scrollbar-track{background:var(--background-secondary);border-radius:3px}.city_model_location_list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px;-webkit-transition:background .3s ease;transition:background .3s ease}.city_model_location_list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}[data-bs-theme=dark] .city_model_location_list::-webkit-scrollbar-track{background:var(--background-secondary)}[data-bs-theme=dark] .city_model_location_list::-webkit-scrollbar-thumb{background:var(--border-color)}[data-bs-theme=dark] .city_model_location_list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}