*{box-sizing:border-box;margin:0;padding:0}.real-estate-page{min-height:100vh;background:#fff;font-family:Tajawal,Segoe UI,sans-serif;direction:rtl}@media (max-width:768px){.real-estate-page{padding-bottom:calc(90px + env(safe-area-inset-bottom, 0px))}}.page-header{position:sticky;top:0;z-index:10;background:rgba(15,12,41,.95);border-bottom:1px solid rgba(0,87,255,.15);padding:12px 16px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 20px rgba(0,0,0,.3)}.header-location-btn,.header-menu-btn,.header-view-btn{width:44px;height:44px;border-radius:12px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.header-title{display:flex;align-items:center;gap:10px;color:#fff;font-size:18px;font-weight:700}.header-title svg{color:#0057ff}.header-right-actions{display:flex;align-items:center;gap:8px}.header-view-btn{background:rgba(0,87,255,.15);color:#0057ff}.header-view-btn:hover{background:rgba(0,87,255,.15);transform:scale(1.05)}.header-view-btn.active{background:#0057ff;color:#fff}.header-location-btn{background:rgba(0,87,255,.15);color:#0057ff}.header-location-btn:hover{background:rgba(0,87,255,.15);transform:scale(1.05)}.header-location-btn svg.active{color:#007a33;animation:pulse-location 2s infinite}@keyframes pulse-location{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.header-menu-btn{width:44px;height:44px;border-radius:12px;border:none;background:rgba(0,87,255,.15);color:#0057ff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.header-menu-btn:hover{background:rgba(0,87,255,.15);transform:scale(1.05)}.search-bar{padding:12px 16px;display:flex;gap:10px}.search-input-wrapper{flex:1;position:relative;display:flex;align-items:center;background:hsla(0,0%,100%,.1);border:1px solid rgba(0,87,255,.15);border-radius:12px;transition:all .3s ease}.search-input-wrapper:focus-within{border-color:#0057ff;background:hsla(0,0%,100%,.15);box-shadow:0 0 0 3px rgba(0,87,255,.15)}.search-input-wrapper svg{position:absolute;right:14px;color:#0057ff;flex-shrink:0}.search-input-wrapper input{width:100%;padding:12px 14px 12px 45px;background:transparent;border:none;outline:none;color:#fff;font-size:14px;direction:rtl;font-family:inherit}.search-input-wrapper input::placeholder{color:hsla(0,0%,100%,.5)}.filter-btn{padding:12px 20px;background:rgba(0,87,255,.15);border:1px solid rgba(0,87,255,.15);border-radius:12px;font-size:14px;font-weight:600;color:#0057ff;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease}.filter-btn:hover{background:rgba(0,87,255,.15);transform:scale(1.05)}.filters-panel{position:fixed;top:0;right:-100%;width:320px;max-width:90vw;height:100vh;height:100dvh;background:#fff;box-shadow:-10px 0 40px rgba(0,0,0,.5);z-index:1000;transition:right .4s cubic-bezier(.4,0,.2,1);overflow-y:auto;border-left:2px solid rgba(0,87,255,.15);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.filters-panel.open{right:0}.filters-header{background:#0057ff;padding:40px 20px 20px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;min-height:80px}.filters-header h3{gap:10px;font-size:18px;font-weight:700;margin:0}.filters-header button,.filters-header h3{display:flex;align-items:center;color:#fff}.filters-header button{background:hsla(0,0%,100%,.2);border:none;width:40px;height:40px;border-radius:50%;justify-content:center;cursor:pointer;transition:all .3s ease}.filters-header button:hover{background:hsla(0,0%,100%,.3);transform:rotate(90deg)}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);z-index:999;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.filters-grid{padding:20px}.filter-group{margin-bottom:20px}.filter-group label{display:flex;align-items:center;gap:8px;color:hsla(0,0%,100%,.9);font-weight:600;font-size:14px;margin-bottom:10px}.filter-group label svg{color:#0057ff}.filter-group input,.filter-group select{width:100%;padding:12px 14px;background:hsla(0,0%,100%,.1);border:1px solid rgba(0,87,255,.15);border-radius:10px;color:#fff;font-size:14px;direction:rtl;font-family:inherit;transition:all .3s ease}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#0057ff;background:hsla(0,0%,100%,.15);box-shadow:0 0 0 3px rgba(0,87,255,.15)}.filter-group input::placeholder{color:hsla(0,0%,100%,.5)}.filter-group select{cursor:pointer}.filter-group select option{background:#fff;color:#fff}.filters-actions{display:flex;gap:10px;border-top:1px solid rgba(0,87,255,.15);padding:20px}.btn-reset{flex:1;padding:14px;background:hsla(0,0%,100%,.1);color:#fff;border:1px solid hsla(0,0%,100%,.2);border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease}.btn-reset:hover{background:hsla(0,0%,100%,.2)}.results-count{padding:12px 16px;color:hsla(0,0%,100%,.8);font-size:14px;display:flex;align-items:center;gap:8px}.results-count span:first-child{color:#0057ff;font-weight:700;font-size:18px}.sorted-badge{background:rgba(0,122,51,.15);color:#007a33;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;margin-right:auto}.location-search-card{margin:0 16px 16px;background:hsla(0,0%,100%,.08);border-radius:14px;border:1px solid rgba(0,87,255,.15)}.location-search-card,.location-search-input{display:flex;align-items:center;gap:10px;padding:10px 14px}.location-search-input{flex:1;background:hsla(0,0%,100%,.05);border-radius:10px}.location-search-input svg{color:#0057ff;flex-shrink:0}.location-search-input input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-size:14px}.location-search-input input::placeholder{color:hsla(0,0%,100%,.5)}.my-location-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#0057ff;border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .3s ease}.my-location-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px rgba(0,87,255,.15)}.map-view-container{position:relative;height:calc(100vh - 200px);margin:0 16px 16px;border-radius:20px;overflow:hidden;background:#fff}.map-property-card{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:360px;background:rgba(26,26,46,.98);border-radius:20px;overflow:hidden;border:1px solid rgba(0,87,255,.15);box-shadow:0 10px 40px rgba(0,0,0,.5);z-index:100;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.map-property-card .close-card-btn{position:absolute;top:10px;left:10px;width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,.6);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10}.map-property-card img{width:100%;height:140px;object-fit:cover}.map-property-card .card-content{padding:14px}.map-property-card .card-type-badge{display:inline-block;padding:4px 10px;background:rgba(0,87,255,.15);color:#0057ff;border-radius:6px;font-size:11px;font-weight:600;margin-bottom:8px}.map-property-card h4{color:#fff;font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.3}.map-property-card .card-location{display:flex;align-items:center;gap:4px;color:hsla(0,0%,100%,.6);font-size:12px;margin-bottom:10px}.map-property-card .card-location svg{color:#0057ff}.map-property-card .card-details{margin-bottom:12px}.map-property-card .card-features{display:flex;gap:12px;margin-bottom:8px}.map-property-card .card-features span{display:flex;align-items:center;gap:4px;color:hsla(0,0%,100%,.7);font-size:11px}.map-property-card .card-features svg{color:#0057ff}.map-property-card .card-price{display:flex;align-items:baseline;gap:4px}.map-property-card .card-price .price{font-size:18px;font-weight:800;color:#007a33}.map-property-card .card-price .unit{font-size:12px;color:hsla(0,0%,100%,.5)}.map-property-card .view-details-btn{width:100%;padding:12px;background:#0057ff;border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease}.map-property-card .view-details-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,87,255,.15)}.properties-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 12px 20px}.no-results{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#fff}.no-results svg{color:#0057ff;margin-bottom:15px;opacity:.5}.no-results h3{font-size:20px;margin:0 0 10px}.no-results p{color:hsla(0,0%,100%,.6);font-size:14px;margin:0}.property-card{background:hsla(0,0%,100%,.05);border-radius:16px;overflow:hidden;border:1px solid rgba(0,87,255,.15);cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px rgba(0,0,0,.1)}.property-card:active{transform:scale(.98)}.property-card:hover{border-color:rgba(0,87,255,.15);box-shadow:0 8px 30px rgba(0,87,255,.15);transform:translateY(-2px)}.property-cover{position:relative;height:120px;background:#0057ff;overflow:hidden}.property-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.property-card:hover .property-cover img{transform:scale(1.1)}.placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0057ff;color:#fff}.type-badge{top:8px;right:8px;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:600;text-transform:capitalize}.rating-badge,.type-badge{position:absolute;background:rgba(0,0,0,.6);color:#fff}.rating-badge{bottom:8px;left:8px;padding:4px 8px;border-radius:8px;display:flex;align-items:center;gap:4px;font-weight:700;font-size:12px}.property-info{padding:12px}.property-name{font-size:14px;font-weight:700;color:#fff;margin:0 0 6px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.property-location{display:flex;align-items:center;gap:4px;color:hsla(0,0%,100%,.6);font-size:11px;margin:0 0 8px}.property-location svg{color:#0057ff;flex-shrink:0}.quick-features{display:flex;gap:12px;margin-bottom:10px}.quick-features span{display:flex;align-items:center;gap:4px;color:hsla(0,0%,100%,.7);font-size:11px}.quick-features svg{color:#0057ff}.property-footer{display:flex;align-items:center;justify-content:space-between}.property-type{padding:4px 8px;background:rgba(0,87,255,.15);border-radius:6px;font-size:11px;font-weight:600;color:#0057ff}.property-price{display:flex;align-items:baseline;gap:4px}.price-amount{font-size:16px;font-weight:800;color:#007a33}.price-unit{font-size:11px;color:hsla(0,0%,100%,.5)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:15px}.loading-icon{color:#0057ff;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.loading-state p{color:#fff;font-size:16px;font-weight:600}.filters-panel::-webkit-scrollbar{width:6px}.filters-panel::-webkit-scrollbar-track{background:rgba(0,87,255,.15)}.filters-panel::-webkit-scrollbar-thumb{background:rgba(0,87,255,.15);border-radius:10px}.filters-panel::-webkit-scrollbar-thumb:hover{background:rgba(0,87,255,.15)}.hidden{display:none!important}@media (max-width:360px){.properties-grid{grid-template-columns:1fr;gap:10px}.property-image{height:100px}}@media (min-width:768px){.page-header{padding:16px 24px}.page-header>div h1{font-size:22px}.properties-grid{grid-template-columns:repeat(3,1fr);gap:16px;padding:0 16px 24px}.property-image{height:140px}.property-info h3{font-size:15px}.property-price{font-size:18px}.filters-panel{width:360px}}@media (min-width:1024px){.properties-grid{grid-template-columns:repeat(4,1fr);gap:20px;padding:0 24px 32px}.property-image{height:160px}.property-card:hover{transform:translateY(-4px)}.results-count{padding:16px 24px;font-size:15px}}@media (min-width:1440px){.properties-grid{grid-template-columns:repeat(5,1fr)}}@media (max-width:480px){.location-search-card{flex-direction:column;gap:10px}.my-location-btn{width:100%;justify-content:center}.map-property-card{width:calc(100% - 20px)}.map-property-card img{height:120px}.map-property-card h4{font-size:14px}.map-property-card .card-price .price{font-size:16px}}