/* پنل‌های نقشه: کارت آمار محله و فهرست فایل‌های یک نقطه. */

.nmx{position:absolute;inset:0;z-index:650;pointer-events:none}
.nmx__pin{position:absolute;pointer-events:auto}
/* پل نامرئی بین نقطه و کارت، تا موس وسط راه «بیرون» حساب نشود */
.nmx__pin::before{content:'';position:absolute;left:50%;transform:translateX(-50%);
	bottom:-34px;width:124%;min-width:120px;height:40px}
.nmx__pin--below::before{bottom:auto;top:-34px}

.leaflet-container.nmx-dim .leaflet-tile-pane{filter:saturate(.55) brightness(.9)}
.leaflet-container.nmx-dim{transition:none}

/* قاب مشترک */
.nmx__pin > *,
.nmx__pin{--c-teal:#2D8493;--c-teal-d:#13606E;--c-ink:#14232A;--c-mut:#51626A;--c-line:#D9E4E8;--c-acc:#C0561A}
.nmx__pin--sum,
.nmx__pin--list{
	width:300px;background:#fff;border:1px solid var(--c-line);border-radius:18px;
	box-shadow:0 26px 58px -20px rgba(10,50,58,.78);color:var(--c-ink);
	font-size:13px;line-height:1.8;text-align:start;
	transform:translate(-50%,calc(-100% - 22px));
	animation:nmx-rise .24s cubic-bezier(.2,1.2,.35,1) both;
	overflow:auto;overscroll-behavior:contain}
.nmx__pin--sum{padding:15px 16px 14px}
.nmx__pin--sum::-webkit-scrollbar,.nmx__pin--list::-webkit-scrollbar{width:6px}
.nmx__pin--sum::-webkit-scrollbar-thumb,.nmx__pin--list::-webkit-scrollbar-thumb{background:#CFDEE2;border-radius:99px}
@keyframes nmx-rise{from{opacity:0;transform:translate(-50%,calc(-100% - 12px)) scale(.96)}
	to{opacity:1;transform:translate(-50%,calc(-100% - 22px)) scale(1)}}
.nmx__pin.is-out{animation:nmx-out .2s ease both}
@keyframes nmx-out{to{opacity:0;transform:translate(-50%,calc(-100% - 14px)) scale(.96)}}

/* اگر بالای نقطه جا نبود، کارت می‌رود زیرش */
.nmx__pin--below.nmx__pin--sum,
.nmx__pin--below.nmx__pin--list{transform:translate(-50%,24px);animation-name:nmx-drop}
@keyframes nmx-drop{from{opacity:0;transform:translate(-50%,14px) scale(.96)}
	to{opacity:1;transform:translate(-50%,24px) scale(1)}}
.nmx__pin--below.is-out{animation:nmx-dout .2s ease both}
@keyframes nmx-dout{to{opacity:0;transform:translate(-50%,16px) scale(.96)}}

.nmx__pin h4{margin:0;font-size:15.5px;font-weight:800}
.nmx-n{font-size:12px;color:var(--c-mut);margin:0 0 11px}
.nmx-split{display:flex;height:9px;border-radius:999px;overflow:hidden;margin-bottom:5px;background:#EEF3F4}
.nmx-split i{display:block}
.nmx-split i.s{background:var(--c-teal)}
.nmx-split i.r{background:var(--c-acc)}
.nmx-key{display:flex;justify-content:space-between;font-size:11px;color:var(--c-mut);margin-bottom:12px}
.nmx-key b{color:var(--c-ink)}

.nmx-tabs{display:flex;gap:5px;margin-bottom:11px}
.nmx-tabs button{flex:1;font:inherit;font-size:11.5px;font-weight:700;border:1px solid var(--c-line);
	background:#fff;color:var(--c-mut);border-radius:9px;padding:5px 2px;cursor:pointer;white-space:nowrap}
.nmx-tabs button.on{background:var(--c-teal-d);border-color:var(--c-teal-d);color:#fff}

.nmx-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.nmx-head b{font-size:21px;font-weight:800;color:var(--c-teal-d);line-height:1.4}
.nmx-head b small{font-size:12px;font-weight:600;color:var(--c-mut)}
.nmx-tr{font-size:12px;font-weight:800;color:#1F7A4D;white-space:nowrap}
.nmx-tr.dn{color:#B4452F}
.nmx-tr.na{color:var(--c-mut);font-weight:600;font-size:11px}
.nmx-cap{font-size:11px;color:var(--c-mut);margin:0 0 10px}

.nmx-hist{display:flex;align-items:flex-end;gap:3px;height:44px;margin-bottom:5px}
.nmx-hist span{flex:1;background:linear-gradient(180deg,#78BFC8,#1B7A8A);border-radius:3px 3px 0 0;
	transform-origin:bottom;animation:nmx-grow .4s cubic-bezier(.2,1.1,.4,1) both;animation-delay:var(--d)}
@keyframes nmx-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.nmx-axis{display:flex;justify-content:space-between;font-size:10.5px;color:var(--c-mut);margin-bottom:3px}
.nmx-axis b{color:var(--c-teal-d)}
.nmx-band{font-size:10.5px;color:#7B8A92;margin:0 0 11px}

.nmx-rows{border-top:1px solid #E7EEF1;padding-top:9px;margin-bottom:11px}
.nmx-rows div{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:2px 0}
.nmx-rows span{color:var(--c-mut)}
.nmx-rows b{font-weight:700}

.nmx-thin{background:#FBF6EE;border:1px solid #F0E0C4;border-radius:12px;padding:10px 12px;margin-bottom:11px;
	font-size:12px;color:#7A5A22;line-height:1.75}
.nmx-cta{display:block;text-align:center;background:var(--c-teal-d);color:#fff;border-radius:999px;
	padding:9px;font-size:13px;font-weight:700;text-decoration:none}
.nmx-cta:hover{background:#0B4C58;color:#fff}

/* فهرست یک نقطه */
.nmx-lh{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 14px 9px;
	border-bottom:1px solid #EEF3F4}
.nmx-lh b{font-size:13.5px}
.nmx-lh span{font-size:11px;color:var(--c-mut)}
.nmx-lh i{font-style:normal;display:inline-block;width:8px;height:8px;border-radius:50%;margin-inline-end:4px}
.nmx-lh i.s{background:var(--c-teal)}
.nmx-lh i.r{background:var(--c-acc);margin-inline-start:7px}
.nmx-lb{max-height:252px;overflow:auto;overscroll-behavior:contain}
.nmx-lb::-webkit-scrollbar{width:6px}
.nmx-lb::-webkit-scrollbar-thumb{background:#CFDEE2;border-radius:99px}
.nmx-r{display:flex;align-items:center;gap:9px;padding:8px 13px;text-decoration:none;color:inherit;
	border-bottom:1px solid #F3F7F8;animation:nmx-slide .25s cubic-bezier(.2,1.1,.4,1) both;animation-delay:var(--d)}
@keyframes nmx-slide{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.nmx-r:last-child{border-bottom:0}
.nmx-r:hover{background:#F4F9FA}
.nmx-r__m{width:46px;height:36px;border-radius:8px;overflow:hidden;flex:none;display:grid;place-items:center;
	background:linear-gradient(160deg,#2C6E7B,#143F49);color:rgba(255,255,255,.45);font-size:14px}
.nmx-r__m img{width:100%;height:100%;object-fit:cover;display:block}
.nmx-r__t{flex:1;min-width:0}
.nmx-r__t b{display:block;font-size:12px;font-weight:700;line-height:1.55;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nmx-r__t small{display:block;font-size:10.5px;color:var(--c-mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nmx-r__p{font-size:11.5px;font-weight:800;color:var(--c-teal-d);white-space:nowrap;flex:none}
.nmx-r__p.rent{color:var(--c-acc)}
.nmx-lf{display:block;text-align:center;padding:9px;font-size:12px;font-weight:700;color:#fff;background:var(--c-teal-d)}

@media (max-width:560px){
	.nmx__pin--sum,.nmx__pin--list{width:min(290px,calc(100vw - 40px))}
}
@media (prefers-reduced-motion:reduce){
	.nmx__pin,.nmx-hist span,.nmx-r{animation-duration:.01ms !important}
}

/* ------------------------------------------------ فیلتر دومرحله‌ای روی نقشه */
.nmf{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:660;
	display:flex;flex-direction:column;align-items:center;gap:7px;
	max-width:calc(100% - 20px);pointer-events:auto;
	font-family:inherit;direction:rtl}
.nmf__row{display:flex;align-items:center;gap:4px;background:#fff;border-radius:999px;
	padding:4px;box-shadow:0 10px 26px -10px rgba(10,50,58,.55),0 0 0 1px rgba(16,60,70,.07);
	max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.nmf__row::-webkit-scrollbar{display:none}
.nmf__row[hidden]{display:none !important}

.nmf__b{flex:none;display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;
	font-weight:700;line-height:1;color:#51626A;background:transparent;border:0;cursor:pointer;
	padding:8px 13px;border-radius:999px;white-space:nowrap;transition:background .15s,color .15s}
.nmf__b:hover{background:#F1F6F7}
.nmf__b i{width:7px;height:7px;border-radius:50%;background:var(--c,#8FA3AB);flex:none}
.nmf__b.is-on{background:var(--c,#14232A);color:#fff}
.nmf__b.is-on:hover{background:var(--c,#14232A)}
.nmf__b.is-on i{background:rgba(255,255,255,.85)}

.nmf__row--sub{background:var(--c,#2D8493);box-shadow:0 10px 26px -10px rgba(10,50,58,.55);
	animation:nmf-in .22s cubic-bezier(.2,1.1,.4,1) both}
@keyframes nmf-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.nmf__q{flex:none;font-size:11.5px;font-weight:700;color:rgba(255,255,255,.82);padding:0 9px 0 4px;white-space:nowrap}
.nmf__c{flex:none;display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:12.5px;
	font-weight:700;line-height:1;color:#fff;background:rgba(255,255,255,.17);border:0;cursor:pointer;
	padding:8px 12px;border-radius:999px;white-space:nowrap;transition:background .15s,color .15s}
.nmf__c:hover{background:rgba(255,255,255,.3)}
.nmf__c b{font-size:10.5px;font-weight:700;opacity:.75}
.nmf__c.is-on{background:#fff;color:var(--c,#2D8493)}
.nmf__c.is-on b{opacity:.6}

@media (max-width:560px){
	.nmf{top:8px;gap:6px;max-width:calc(100% - 12px)}
	.nmf__b,.nmf__c{font-size:12px;padding:7px 11px}
	.nmf__q{display:none}
}
@media (prefers-reduced-motion:reduce){
	.nmf__row--sub{animation-duration:.01ms}
}

/* همان ردیف نوع ملک، روی نقشهٔ صفحهٔ نخست (بالای کلیدهای معامله) */
.maphero__tools .nmf-sub{position:absolute;bottom:calc(100% + 8px);inset-inline-start:0;
	max-width:min(760px,calc(100vw - 40px));z-index:4;
	animation:nmf-up .22s cubic-bezier(.2,1.1,.4,1) both}
@keyframes nmf-up{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:860px){
	.maphero__tools .nmf-sub{inset-inline:0;max-width:100%}
}
