/* HARİTALI ARA (/Home/HaritaliAra) — sayfa stili.
   8 Eki 2026: görünümdeki 1.860 satırlık gömülü <style> buraya taşındı (önbelleğe alınsın). */
.leaflet-control-zoom a {
    width: 36px !important; height: 36px !important;
    line-height: 36px !important; font-size: 20px !important;
    border-radius: 8px !important; margin-bottom: 4px !important;
    background: rgba(255,255,255,0.95) !important; color: #333 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.3) !important;
}
.leaflet-control-zoom { border: none !important; border-radius: 10px !important; }
/* Ana sayfa tam ekran harita icin ozel stiller */
.fullscreen-map-page {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
}

.fullscreen-map-container {
    width: 100%;
    height: 100%;
    position: relative;
}

.fullscreen-map-container #map {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

/* Harita uzerinde kontrol butonlari */
.map-controls {
    position: absolute;
    top: 4.5rem;
    right: 1rem;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* 3 Eki 2026 (Kamuran: "butonların yerini belli edelim"): yarı saydam beyaz düğmeler uydu görüntüsünde
   kayboluyordu → DOLU zemin, tek dikey grup (Google Haritalar gibi), 44 px, turuncu vurgu, açıklama balonu.
   Renkler --hk-* belirteçlerinden; karanlık mod aşağıda yalnız belirteçleri değiştirir. */
.map-controls {
    --hk-zemin: #ffffff;
    --hk-simge: #1f2937;
    --hk-cizgi: rgba(15, 23, 42, 0.12);
    --hk-vurgu: #E8711E;
    --hk-vurgu-zemin: #FFF1E7;
    --hk-aktif: #1D4ED8;
    gap: 0;
    border-radius: 14px;
    background: var(--hk-zemin);
    border: 1px solid var(--hk-cizgi);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.28), 0 1px 3px rgba(0, 0, 0, 0.18);
}
[data-bs-theme="dark"] .map-controls {
    --hk-zemin: #1E2433;
    --hk-simge: #E5E7EB;
    --hk-cizgi: rgba(255, 255, 255, 0.12);
    --hk-vurgu: #FB923C;
    --hk-vurgu-zemin: rgba(251, 146, 60, 0.16);
    --hk-aktif: #60A5FA;
}

.map-control-btn {
    position: relative;
    width: 44px;
    height: 44px;
    border: 0;
    border-bottom: 1px solid var(--hk-cizgi);
    background: transparent;
    color: var(--hk-simge);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease;
}
.map-control-btn:first-child { border-radius: 13px 13px 0 0; }
.map-control-btn:last-child { border-bottom: 0; border-radius: 0 0 13px 13px; }

.map-control-btn:hover,
.map-control-btn:focus-visible {
    background: var(--hk-vurgu-zemin);
    color: var(--hk-vurgu);
    outline: none;
}
.map-control-btn:focus-visible { box-shadow: inset 0 0 0 2px var(--hk-vurgu); }

.map-control-btn i {
    font-size: 1.2rem;
}

/* Konum bulundu → düğme mavi kalır */
.map-control-btn.konum-acik { color: var(--hk-aktif); }
.map-control-btn .spinner-border { width: 1.1rem; height: 1.1rem; border-width: .15em; }

/* Açıklama balonu (yalnız fare/klavye — dokunmatikte gösterilmez) */
.map-control-btn::after {
    content: attr(data-etiket);
    position: absolute;
    right: calc(100% + 10px);
    top: 50%;
    transform: translateY(-50%);
    white-space: nowrap;
    padding: .3rem .6rem;
    border-radius: 8px;
    font-size: .8rem;
    font-weight: 600;
    background: #111827;
    color: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
    opacity: 0;
    pointer-events: none;
    transition: opacity .12s ease;
}
@media (hover: hover) {
    .map-control-btn:hover::after { opacity: 1; }
}
.map-control-btn:focus-visible::after { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
    .map-control-btn, .map-control-btn::after { transition: none; }
}

/* Konum uyarısı — düğme grubunun solunda */
.harita-konum-uyari {
    position: absolute;
    top: 4.5rem;
    right: calc(1rem + 56px);
    z-index: 1001;
    max-width: min(320px, calc(100vw - 6rem));
    padding: .75rem 2.2rem .75rem .9rem;
    border-radius: 12px;
    background: var(--bs-body-bg, #fff);
    color: var(--bs-body-color, #1f2937);
    border: 1px solid rgba(0, 0, 0, .1);
    border-left: 4px solid #E8711E;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .25);
    font-size: .88rem;
    line-height: 1.45;
}
.harita-konum-uyari[hidden] { display: none; }
.harita-konum-uyari b { display: block; margin-bottom: .15rem; }
.harita-konum-uyari .kapat {
    position: absolute; top: .35rem; right: .35rem; width: 28px; height: 28px;
    border: 0; border-radius: 50%; background: transparent; color: inherit; opacity: .6;
}
.harita-konum-uyari .kapat:hover { opacity: 1; background: rgba(0, 0, 0, .06); }
[data-bs-theme="dark"] .harita-konum-uyari { border-color: rgba(255, 255, 255, .12); border-left-color: #FB923C; }

/* Kullanıcının konumu: mavi nokta */
.kullanici-konum-noktasi {
    width: 18px; height: 18px; border-radius: 50%;
    background: #1D4ED8; border: 3px solid #fff;
    box-shadow: 0 0 0 2px rgba(29, 78, 216, .35), 0 2px 6px rgba(0, 0, 0, .35);
}
/* "Buradasınız" halkası — konum bulununca 3 sn genişleyip söner (3 Eki 2026) */
.kullanici-konum-halkasi {
    width: 90px; height: 90px; border-radius: 50%;
    border: 4px solid #1D4ED8; background: rgba(29, 78, 216, .12);
    box-shadow: 0 0 0 3px rgba(255, 255, 255, .85);
    animation: konumHalka 1s ease-out 3;
}
@keyframes konumHalka {
    0%   { transform: scale(.35); opacity: 1; }
    100% { transform: scale(1);   opacity: .15; }
}
@media (prefers-reduced-motion: reduce) { .kullanici-konum-halkasi { animation: none; } }

/* Harita katman secici */
.map-layer-switcher {
    position: absolute;
    top: 4.5rem;
    left: 1rem;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

/* Sol panel acikken layer switcher saga kaydir */
.filter-panel-open .map-layer-switcher {
    left: calc(340px + 1rem);
}

[data-bs-theme="dark"] .map-layer-switcher {
    background: rgba(33, 33, 33, 0.95);
}

.map-layer-toggle {
    width: 40px;
    height: 40px;
    border: none;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #FF6B35;
    transition: all 0.2s;
}

.map-layer-toggle:hover {
    background: rgba(255, 107, 53, 0.1);
}

.map-layer-toggle i {
    font-size: 1.2rem;
}

.map-layer-list {
    display: none;
    padding: 0.25rem 0;
    min-width: 180px;
    border-top: 1px solid rgba(0,0,0,0.08);
}

.map-layer-switcher.open .map-layer-list {
    display: block;
}

.map-layer-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    cursor: pointer;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--bs-body-color, #333);
    transition: background 0.15s;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
}

.map-layer-item:hover {
    background: rgba(255, 107, 53, 0.08);
}

.map-layer-item.active {
    color: #FF6B35;
    font-weight: 600;
}

.map-layer-item .layer-icon {
    width: 20px;
    text-align: center;
    font-size: 0.9rem;
}

/* Harita uzerinde bilgi karti */
.map-info-card {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
    padding: 1rem 1.5rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.filter-panel-open .map-info-card {
    left: calc(340px + 2rem);
}

[data-bs-theme="dark"] .map-info-card {
    background: rgba(33, 33, 33, 0.9);
}

/* Layout elemanlarini gizle - tam ekran harita */
.sui-navbar,
.sui-footer,
.sui-sidenav {
    display: none !important;
}

/* === NAVBAR === */
.map-navbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1001;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0,0,0,0.06);
    padding: 0.65rem 1.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

[data-bs-theme="dark"] .map-navbar {
    background: rgba(15, 22, 35, 0.95);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.4);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

[data-bs-theme="dark"] .map-navbar-brand img {
    filter: drop-shadow(0 0 8px rgba(100, 200, 255, 0.4)) drop-shadow(0 0 20px rgba(100, 180, 255, 0.2));
}

[data-bs-theme="dark"] .navbar-icon-btn {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.15);
}

[data-bs-theme="dark"] .navbar-icon-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

[data-bs-theme="dark"] .navbar-login-btn {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
}

[data-bs-theme="light"] .navbar-icon-btn {
    background: rgba(0, 0, 0, 0.08);
    border-color: rgba(0, 0, 0, 0.15);
    color: #333;
}
[data-bs-theme="light"] .navbar-icon-btn:hover {
    background: rgba(0, 0, 0, 0.15);
    color: #000;
}
[data-bs-theme="light"] .navbar-login-btn {
    background: rgba(0, 0, 0, 0.06);
    border-color: rgba(0, 0, 0, 0.15);
    color: #333;
}
[data-bs-theme="light"] .navbar-login-btn:hover {
    background: rgba(0, 0, 0, 0.12);
    color: #000;
}

[data-bs-theme="dark"] .navbar-login-btn:hover {
    background: rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}


.map-navbar-left {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.map-navbar-brand {
    color: #fff;
    font-weight: 600;
    font-size: 1.1rem;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

.map-navbar-brand:hover {
    color: #fff;
}

.map-navbar-right {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.navbar-icon-btn {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
    text-decoration: none;
}

.navbar-icon-btn:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
    color: #fff;
}

.navbar-icon-btn i {
    font-size: 1rem;
}

.navbar-login-btn {
    padding: 0.45rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 500;
}

.navbar-login-btn:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
    color: #fff;
}

.navbar-ilan-btn {
    padding: 0.45rem 1.1rem;
    border: none;
    border-radius: 12px;
    background: #dc3545;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    transition: all 0.2s ease;
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
}
.navbar-ilan-btn:hover {
    background: #c82333;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(220, 53, 69, 0.4);
    color: #fff;
}

/* === BOLGE SINIRLARI TOOLTIP === */
.bolge-tooltip {
    background: rgba(51, 103, 214, 0.92);
    color: #fff;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 6px;
    font-size: 13px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.35);
    border: none;
    white-space: nowrap;
}
.bolge-tooltip::before { display: none; }
.bolge-tooltip-sm {
    font-size: 11px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 4px;
}
/* Karartma overlay */
.bolge-dim-overlay {
    pointer-events: none;
}

/* === SOL FILTRE PANELI === */
.map-filter-panel {
    position: absolute;
    top: 3.6rem;
    left: 0;
    bottom: 0;
    width: 340px;
    z-index: 1001;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    transform: translateX(0);
    transition: transform 0.3s ease;
    overflow: hidden;
}

.map-filter-panel.closed {
    transform: translateX(-100%);
}

[data-bs-theme="dark"] .map-filter-panel {
    background: rgba(25, 28, 40, 0.97);
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.4);
}

.filter-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    flex-shrink: 0;
}

[data-bs-theme="dark"] .filter-panel-header {
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

.filter-panel-title {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--bs-body-color);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-panel-title i {
    color: #FF6B35;
}

.filter-panel-close {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.05);
    color: var(--bs-body-color);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

.filter-panel-close:hover {
    background: rgba(255, 107, 53, 0.1);
    color: #FF6B35;
}

.filter-panel-body {
    flex: 1;
    overflow-y: auto;
    padding: 0.75rem 1.25rem;
}

.filter-panel-body::-webkit-scrollbar {
    width: 4px;
}

.filter-panel-body::-webkit-scrollbar-track {
    background: transparent;
}

.filter-panel-body::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.12);
    border-radius: 2px;
}

.filter-section {
    margin-bottom: 1.25rem;
}

.filter-section-title {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--bs-body-color);
    margin-bottom: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.filter-select {
    width: 100%;
    height: 38px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    padding: 0 0.75rem;
    font-size: 0.82rem;
    background: rgba(255, 255, 255, 0.8);
    color: var(--bs-body-color);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    margin-bottom: 0.5rem;
}

.filter-select:focus {
    border-color: #FF6B35;
    box-shadow: 0 0 0 3px rgba(255, 107, 53, 0.12);
}

[data-bs-theme="dark"] .filter-select {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.1);
    color: #e0e0e0;
}

[data-bs-theme="dark"] .filter-select option {
    background: #1e2230;
    color: #e0e0e0;
}

.filter-input {
    width: 100%;
    height: 38px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    padding: 0 0.75rem;
    font-size: 0.82rem;
    background: rgba(255, 255, 255, 0.8);
    color: var(--bs-body-color);
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.filter-input:focus {
    border-color: #FF6B35;
    box-shadow: 0 0 0 3px rgba(255, 107, 53, 0.12);
}

[data-bs-theme="dark"] .filter-input {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.1);
    color: #e0e0e0;
}

.filter-price-row {
    display: flex;
    gap: 0.5rem;
}

.filter-price-row .filter-input {
    flex: 1;
}

.filter-panel-footer {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    flex-shrink: 0;
    display: flex;
    gap: 0.5rem;
}

[data-bs-theme="dark"] .filter-panel-footer {
    border-top-color: rgba(255, 255, 255, 0.08);
}

.filter-btn {
    height: 42px;
    padding: 0 1.25rem;
    border: none;
    border-radius: 12px;
    background: linear-gradient(135deg, #FF6B35, #FFA726);
    color: #fff;
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.2s;
    flex: 1;
}

.filter-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.4);
}

.filter-btn-secondary {
    background: rgba(0, 0, 0, 0.05);
    color: var(--bs-body-color);
    flex: 0 0 42px;
    padding: 0;
}

[data-bs-theme="dark"] .filter-btn-secondary {
    background: rgba(255, 255, 255, 0.08);
    color: #e0e0e0;
}

.filter-btn-secondary:hover {
    background: rgba(0, 0, 0, 0.1);
    box-shadow: none;
    transform: none;
}

.filter-sonuc {
    font-size: 0.75rem;
    color: var(--bs-secondary-color);
    text-align: center;
    padding-top: 0.35rem;
}

/* Filtre panel acma butonu (panel kapali oldugunda) */
.filter-open-btn {
    position: absolute;
    top: 4.5rem;
    left: 1rem;
    z-index: 1001;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12);
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #FF6B35;
    font-size: 1.2rem;
    transition: all 0.2s;
}

.filter-open-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(255, 107, 53, 0.3);
}

[data-bs-theme="dark"] .filter-open-btn {
    background: rgba(30, 34, 48, 0.95);
    border-color: rgba(255, 255, 255, 0.1);
}

.filter-panel-closed .filter-open-btn {
    display: flex;
}

/* === YAN PANEL (ILAN LISTESI) === */
.map-property-panel {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 380px;
    z-index: 1000;
    background: rgba(255, 255, 255, 0.97);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.3s ease;
}

.map-property-panel.open {
    transform: translateX(0);
}

[data-bs-theme="dark"] .map-property-panel {
    background: rgba(25, 28, 40, 0.97);
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.4);
}

.panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    padding-top: 4.5rem;
}

[data-bs-theme="dark"] .panel-header {
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

.panel-header-title {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--bs-body-color);
}

.panel-close-btn {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.05);
    color: var(--bs-body-color);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

.panel-close-btn:hover {
    background: rgba(255, 107, 53, 0.1);
    color: #FF6B35;
}

.panel-body {
    flex: 1;
    overflow-y: auto;
    padding: 0.75rem;
}

.panel-body::-webkit-scrollbar {
    width: 5px;
}

.panel-body::-webkit-scrollbar-track {
    background: transparent;
}

.panel-body::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15);
    border-radius: 3px;
}

/* === ILAN KARTI === */
.ilan-card {
    display: flex;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
    margin-bottom: 0.5rem;
    border: 1px solid transparent;
}

.ilan-card:hover {
    background: rgba(255, 107, 53, 0.05);
    border-color: rgba(255, 107, 53, 0.15);
}

.ilan-card-img {
    width: 90px;
    height: 70px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    background: rgba(0, 0, 0, 0.05);
}

.ilan-card-placeholder {
    width: 90px;
    height: 70px;
    border-radius: 8px;
    flex-shrink: 0;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 4px 3px;
    overflow: hidden;
}
.ilan-card-placeholder img.empty-mini-logo {
    max-width: 60px;
    max-height: 22px;
    opacity: 0.85;
}
.ilan-card-placeholder .empty-mini-no {
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
    background: linear-gradient(135deg, #10B981 0%, #3B82F6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    letter-spacing: 0.3px;
}
[data-bs-theme="dark"] .ilan-card-placeholder {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
}
[data-bs-theme="dark"] .ilan-card-placeholder img.empty-mini-logo {
    filter: brightness(1.1);
}

.ilan-card-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ilan-card-badge {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    border-radius: 6px;
    font-size: 0.65rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 0.2rem;
    width: fit-content;
}

.ilan-card-title {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--bs-body-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0.15rem;
}

.ilan-card-price {
    font-size: 0.85rem;
    font-weight: 700;
    color: #FF6B35;
    margin-bottom: 0.15rem;
}

.ilan-card-details {
    font-size: 0.7rem;
    color: var(--bs-secondary-color);
}

.ilan-card-details span {
    margin-right: 0.5rem;
}

/* === POPUP STILI (Hepsiemlak tarzi buyuk kart) === */
.leaflet-popup-content-wrapper {
    padding: 0 !important;
    border-radius: 12px !important;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0,0,0,0.25) !important;
    border: 2px solid #E8711E !important;
    background: rgba(255,255,255,0.97) !important;
}

.leaflet-popup-content {
    margin: 0 !important;
    min-width: 400px;
    max-width: 460px;
}

.favori-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 10;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: none;
    background: rgba(255,255,255,0.9);
    color: #ccc;
    font-size: 1.1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.favori-btn:hover { transform: scale(1.15); }
.favori-btn.aktif { color: #e74c3c; }
.favori-btn.aktif i { font-weight: bold; }

.popup-fav-btn {
    width: 40px;
    height: 36px;
    border-radius: 10px;
    border: 2px solid #e74c3c;
    background: transparent;
    color: #e74c3c;
    font-size: 1.1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    flex-shrink: 0;
}
.popup-fav-btn:hover { background: #fde8e8; transform: scale(1.05); }
.popup-fav-btn.aktif { background: #e74c3c; color: #fff; border-color: #e74c3c; }
.popup-fav-btn.aktif:hover { background: #c0392b; }

.ilan-popup {
    display: flex;
    flex-direction: row;
}

.popup-img-wrap {
    width: 180px;
    min-height: 220px;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
    background: #f0f0f0;
}

.popup-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.popup-img-wrap .popup-img-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 1rem;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
    position: relative;
    overflow: hidden;
}
.popup-img-wrap .popup-img-placeholder::before {
    content: ""; position: absolute; inset: 0;
    background-image: radial-gradient(circle at 20% 30%, rgba(16,185,129,0.12) 0%, transparent 40%), radial-gradient(circle at 80% 70%, rgba(59,130,246,0.12) 0%, transparent 40%);
    pointer-events: none;
}
.popup-img-wrap .popup-img-placeholder img.empty-card-logo {
    max-width: 130px; max-height: 50px; opacity: 0.9; position: relative; z-index: 1;
}
.popup-img-wrap .popup-img-placeholder .empty-card-no {
    font-size: 1.3rem; font-weight: 800; letter-spacing: 0.5px;
    background: linear-gradient(135deg, #10B981 0%, #3B82F6 100%);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
    line-height: 1; position: relative; z-index: 1; margin-top: 0.3rem;
}
.popup-img-wrap .popup-img-placeholder .empty-card-label {
    font-size: 0.6rem; color: rgba(0,0,0,0.45); text-transform: uppercase;
    letter-spacing: 1.5px; font-weight: 600; position: relative; z-index: 1;
}
[data-bs-theme="dark"] .popup-img-wrap .popup-img-placeholder {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
}
[data-bs-theme="dark"] .popup-img-wrap .popup-img-placeholder .empty-card-label {
    color: rgba(255,255,255,0.5);
}

.popup-body {
    flex: 1;
    padding: 0.85rem 1rem;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.popup-body .popup-top-badges {
    display: flex;
    gap: 0.25rem;
    flex-wrap: wrap;
    margin-bottom: 0.3rem;
}

.popup-badge {
    display: inline-block;
    padding: 0.12rem 0.5rem;
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 600;
    color: #fff;
}

.popup-title {
    font-size: 0.82rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.3rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.3;
}

.popup-specs {
    display: flex;
    gap: 0.75rem;
    font-size: 0.75rem;
    color: #555;
    margin-bottom: 0.4rem;
    flex-wrap: wrap;
}

.popup-specs span {
    font-weight: 600;
}

.popup-price {
    font-size: 1.1rem;
    font-weight: 800;
    color: #333;
    margin-bottom: 0.5rem;
}

.popup-footer {
    margin-top: auto;
    padding-top: 0.5rem;
    border-top: 1px solid #eee;
}

.popup-danisman {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.5rem;
}

.popup-danisman-foto {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid #FF6B35;
}

.popup-danisman-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    flex-shrink: 0;
    background: linear-gradient(135deg, #FF6B35, #FFA726);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 700;
    font-size: 0.8rem;
}

.popup-danisman-info {
    flex: 1;
    min-width: 0;
}

.popup-danisman-name {
    font-size: 0.78rem;
    font-weight: 600;
    color: #333;
    line-height: 1.2;
}

.popup-danisman-tel {
    font-size: 0.7rem;
    color: #888;
}

.popup-detail-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.4rem 0.85rem;
    background: linear-gradient(135deg, #FF6B35, #FFA726);
    color: #fff !important;
    border-radius: 8px;
    text-decoration: none !important;
    font-size: 0.75rem;
    font-weight: 700;
    transition: all 0.2s;
    white-space: nowrap;
}

.popup-detail-btn:hover {
    box-shadow: 0 3px 12px rgba(255, 107, 53, 0.5);
    transform: translateY(-1px);
    color: #fff !important;
}

/* === POPUP DARK MODE === */
[data-bs-theme="dark"] .leaflet-popup-content-wrapper {
    background: #1a1e2e !important;
    border-color: #E8711E !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.5) !important;
}

[data-bs-theme="dark"] .popup-title {
    color: #e0e0e0;
}

[data-bs-theme="dark"] .popup-specs {
    color: #aaa;
}

[data-bs-theme="dark"] .popup-price {
    color: #FF8C5A;
}

[data-bs-theme="dark"] .popup-danisman {
    border-top-color: rgba(255,255,255,0.1);
}

[data-bs-theme="dark"] .popup-danisman-name {
    color: #ddd;
}

[data-bs-theme="dark"] .popup-danisman-tel {
    color: #999;
}

[data-bs-theme="dark"] .popup-img-wrap {
    background: #2a2e3e;
}

[data-bs-theme="dark"] .leaflet-popup-tip {
    background: #1e2230 !important;
}

.firsat-badge, .vitrin-badge {
    display: inline-block;
    padding: 0.1rem 0.45rem;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 700;
    color: #fff;
}

.firsat-badge {
    background: linear-gradient(135deg, #f59e0b, #f97316);
}

.vitrin-badge {
    background: linear-gradient(135deg, #8b5cf6, #a855f7);
}

/* === KESİN KONUM (Satış Yetkisi Bizde) — pin gerçek noktada, parsel sınırı çizili === */
.kesin-konum-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.1rem 0.45rem;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 700;
    color: #fff;
    background: #0f766e;
}
.kesin-parsel-tooltip {
    background: rgba(15, 118, 110, 0.95);
    color: #fff;
    font-weight: 600;
    font-size: 12px;
    padding: 3px 10px;
    border-radius: 5px;
    border: none;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);
    white-space: nowrap;
}
.kesin-parsel-tooltip::before { display: none; }

/* === FIYAT ETIKETLI MARKER === */
.price-marker {
    background: none !important;
    border: none !important;
}

.price-label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px 3px 6px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(0,0,0,0.35);
    border: 2px solid #fff;
    cursor: pointer;
    transition: transform 0.15s;
}

.price-label i {
    font-size: 12px;
}

.price-label:hover {
    transform: scale(1.12);
    z-index: 9999 !important;
}

[data-bs-theme="dark"] .price-label {
    border-color: rgba(255,255,255,0.3);
    box-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

/* === POPUP SLIDER === */
.popup-img-wrap {
    position: relative;
}

.popup-slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(0,0,0,0.5);
    color: #fff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.2s;
    z-index: 2;
}

.popup-slider-btn:hover {
    background: rgba(0,0,0,0.8);
}

.popup-slider-prev { left: 4px; }
.popup-slider-next { right: 4px; }

.popup-img-counter {
    position: absolute;
    bottom: 6px;
    left: 6px;
    background: rgba(0,0,0,0.6);
    color: #fff;
    padding: 1px 7px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
}

/* (eski pin marker kaldirildi - artik fiyat etiketli marker kullaniliyor) */

/* === CLUSTER STILI === */
.marker-cluster-small {
    background-color: rgba(255, 107, 53, 0.3) !important;
}

.marker-cluster-small div {
    background-color: rgba(255, 107, 53, 0.7) !important;
    color: #fff !important;
    font-weight: 600;
}

.marker-cluster-medium {
    background-color: rgba(255, 107, 53, 0.4) !important;
}

.marker-cluster-medium div {
    background-color: rgba(255, 107, 53, 0.8) !important;
    color: #fff !important;
    font-weight: 600;
}

.marker-cluster-large {
    background-color: rgba(255, 107, 53, 0.5) !important;
}

.marker-cluster-large div {
    background-color: rgba(255, 107, 53, 0.9) !important;
    color: #fff !important;
    font-weight: 600;
}

/* === BOS DURUM === */
.empty-state {
    text-align: center;
    padding: 3rem 1.5rem;
    color: var(--bs-secondary-color);
}

.empty-state i {
    font-size: 3rem;
    opacity: 0.3;
    margin-bottom: 1rem;
    display: block;
}

.empty-state p {
    font-size: 0.85rem;
    margin: 0;
}

/* === RESPONSIVE === */
/* Mobil hamburger + offcanvas menü item */
.map-navbar-toggler {
    background: transparent;
    border: 1px solid rgba(0,0,0,0.15);
    border-radius: 10px;
    width: 42px; height: 42px;
    display: inline-flex; align-items: center; justify-content: center;
    color: inherit;
    font-size: 1.4rem;
    cursor: pointer;
}
.map-navbar-toggler:hover { background: rgba(0,0,0,0.05); }
[data-bs-theme="dark"] .map-navbar-toggler { border-color: rgba(255,255,255,0.15); color: #fff; }
[data-bs-theme="dark"] .map-navbar-toggler:hover { background: rgba(255,255,255,0.1); }
.map-mobil-menu-item {
    display: flex; align-items: center; gap: 0.85rem;
    padding: 0.8rem 1rem;
    border-radius: 10px;
    color: inherit; text-decoration: none;
    font-weight: 500; font-size: 0.95rem;
    margin-bottom: 0.3rem;
    width: 100%; border: none;
    background: transparent;
    text-align: left;
    transition: background 0.15s;
}
.map-mobil-menu-item:hover, .map-mobil-menu-item:focus { background: rgba(0,0,0,0.06); color: inherit; }
[data-bs-theme="dark"] .map-mobil-menu-item:hover { background: rgba(255,255,255,0.08); }
.map-mobil-menu-item i { font-size: 1.25rem; min-width: 26px; color: var(--primary, #E8711E); }
.map-mobil-menu-item.danger i { color: #dc3545; }
.map-mobil-menu-item.danger { color: #dc3545; }

@media (max-width: 768px) {
    .map-filter-panel {
        width: 300px;
    }

    .filter-panel-open .map-layer-switcher {
        left: calc(300px + 0.75rem);
    }

    .filter-panel-open .map-info-card {
        left: calc(300px + 0.75rem);
    }

    .map-property-panel {
        width: 100%;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        height: 50vh;
        border-radius: 20px 20px 0 0;
        transform: translateY(100%);
    }

    .map-property-panel.open {
        transform: translateY(0);
    }

    .panel-header {
        padding-top: 1rem;
    }

    .map-controls {
        top: 4.5rem;
        right: 0.75rem;
    }

    .map-navbar {
        padding: 0.5rem 0.75rem;
    }

    .map-navbar-brand span {
        display: none;
    }

    .map-info-card {
        left: 0.75rem;
        bottom: 0.75rem;
    }
}

@media (max-width: 480px) {
    .map-filter-panel {
        width: 100%;
    }

    .filter-panel-open .map-layer-switcher,
    .filter-panel-open .map-info-card {
        display: none;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════════════
   6 Eki 2026 YENİLEME (onaylı taslak 61EWWXqKSEzXeKhCgEgjmw): ortak üst çubuk harita üstünde yarı saydam,
   sol üstte arama + hızlı çipler, filtreler çiplerin altında kart panel, sağda "Bu alanda N ilan" listesi
   (telefonda alttan sayfa), sağ altta tek düğme sütunu. Kalıcı uyarı bandı kalktı → liste altındaki künye.
   Kontrast: açık #5B6475 / #FFF 5,9 · #A8500A / #FFF 5,9 · koyu #B5BDCB / #1A2035 8,6 · #FFA726 / #1A2035 8,1
   ═══════════════════════════════════════════════════════════════════════════════════════ */
.fullscreen-map-container {
    --hy-kart: #FFFFFF; --hy-kenar: rgba(26,32,53,0.10); --hy-yazi: #1A2035; --hy-ikinci: #5B6475;
    --hy-vurgu: #A8500A; --hy-vzemin: #FFF4EC; --hy-vkenar: #F5D6BF; --hy-fiyat: #C2560E;
    --hy-girdi: #FFFFFF; --hy-girdi-kenar: #CDD3DD; --hy-ayrac: #E3E7EE; --hy-hover: #F2F4F8;
    --hy-cip: rgba(255,255,255,0.96); --hy-cip-kenar: rgba(26,32,53,0.10); --hy-golge: 0 6px 20px rgba(0,0,0,0.18);
    --ust: 16px; --ust-yuk: 60px; --kenar: 16px; --liste-gen: 400px;
}
[data-bs-theme="dark"] .fullscreen-map-container {
    --hy-kart: #1A2035; --hy-kenar: rgba(255,255,255,0.08); --hy-yazi: #F3F4F6; --hy-ikinci: #B5BDCB;
    --hy-vurgu: #FFA726; --hy-vzemin: rgba(255,167,38,0.14); --hy-vkenar: rgba(255,167,38,0.40); --hy-fiyat: #FFA726;
    --hy-girdi: #161D2E; --hy-girdi-kenar: #3A4359; --hy-ayrac: rgba(255,255,255,0.10); --hy-hover: rgba(255,255,255,0.06);
    --hy-cip: rgba(26,32,53,0.94); --hy-cip-kenar: rgba(255,255,255,0.14); --hy-golge: 0 6px 22px rgba(0,0,0,0.40);
}

/* Üst çubuk: ortak _SiteUstCubuk, harita üstünde yüzer */
.harita-ust .site-navbar {
    position: absolute; top: var(--ust); left: var(--kenar); right: var(--kenar); z-index: 1100;
    min-height: var(--ust-yuk); border-radius: 14px; border: 1px solid rgba(255,255,255,0.9);
    padding: 0 .5rem 0 1rem; box-shadow: 0 6px 24px rgba(0,0,0,0.18);
}
[data-bs-theme="dark"] .harita-ust .site-navbar { border-color: rgba(255,255,255,0.10); background: rgba(15,22,35,0.88); }
@media (max-width: 991.98px) {
    .harita-ust .site-navbar .navbar-collapse { top: calc(100% + 8px); border-radius: 14px; border: 1px solid var(--hy-kenar); }
}

/* Arama + çipler */
.harita-arama { position: absolute; top: calc(var(--ust) + var(--ust-yuk) + 16px); left: var(--kenar); z-index: 1002;
                width: min(700px, calc(100% - var(--liste-gen) - 3 * var(--kenar) - 56px)); display: flex; flex-direction: column; gap: 10px; }
.harita-arama-kutu { display: flex; align-items: center; gap: 12px; height: 52px; padding: 0 8px 0 16px; border-radius: 14px;
                     background: var(--hy-kart); border: 1px solid var(--hy-kenar); box-shadow: var(--hy-golge); margin: 0; }
.harita-arama-kutu:focus-within { border-color: var(--hy-vurgu); }
.harita-arama-kutu { position: relative; }   /* yer önerileri (#haritaYerOneri) kutunun hemen altında */
.harita-arama-ikon { color: var(--hy-vurgu); flex: none; }
.harita-arama-kutu input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font-size: 15px; color: var(--hy-yazi); }
.harita-arama-kutu input::placeholder { color: var(--hy-ikinci); }
.harita-arama-dugme { height: 38px; padding: 0 18px; border: 0; border-radius: 10px; background: #A8500A; color: #fff; font-weight: 700; font-size: 14px; }
.harita-arama-dugme:hover { background: #93440A; }
.harita-arama-uyari { padding: 8px 12px; border-radius: 10px; background: var(--hy-kart); border: 1px solid var(--hy-vkenar); color: var(--hy-yazi); font-size: 13px; box-shadow: var(--hy-golge); }
.harita-arama-uyari[hidden] { display: none; }
.harita-cipler { display: flex; flex-wrap: nowrap; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-bottom: 4px; }
.harita-cipler::-webkit-scrollbar { display: none; }
.hcip { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 14px; border-radius: 999px; cursor: pointer;
        background: var(--hy-cip); color: var(--hy-yazi); border: 1px solid var(--hy-cip-kenar); font-size: 13.5px; font-weight: 600;
        box-shadow: 0 3px 10px rgba(0,0,0,0.14); white-space: nowrap; }
.hcip[hidden] { display: none; }
.hcip:hover { border-color: var(--hy-vurgu); }
.hcip.secili { background: #A8500A; color: #fff; border-color: #A8500A; }
[data-bs-theme="dark"] .hcip.secili { background: #FFA726; color: #1A2035; border-color: #FFA726; }
.hcip-sayi { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: #A8500A; color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.hcip-sayi[hidden] { display: none; }
.hcip:focus-visible, .harita-arama-dugme:focus-visible, .filtre-cip:focus-visible, .panel-mobil-ac:focus-visible { outline: 2px solid var(--hy-vurgu); outline-offset: 2px; }

/* Filtreler paneli */
.map-filter-panel {
    top: calc(var(--ust) + var(--ust-yuk) + 16px + 52px + 10px + 36px + 14px); left: var(--kenar); bottom: var(--kenar); width: 380px;
    z-index: 1003; border-radius: 16px; background: var(--hy-kart); border: 1px solid var(--hy-kenar);
    box-shadow: 0 10px 30px rgba(0,0,0,0.22); color: var(--hy-yazi); backdrop-filter: none; -webkit-backdrop-filter: none;
}
[data-bs-theme="dark"] .map-filter-panel { background: var(--hy-kart); box-shadow: 0 10px 30px rgba(0,0,0,0.45); }
.map-filter-panel.closed { transform: translateX(calc(-100% - 2 * var(--kenar))); }
.filter-panel-header { padding: 16px 18px 12px; border-bottom: 0; }
.filter-panel-title { font: 700 17px 'Poppins', 'Segoe UI', sans-serif; color: var(--hy-yazi); }
.filtre-ust-sag { display: inline-flex; align-items: center; gap: 12px; }
.filtre-temizle-bag { border: 0; background: none; padding: 0; font-size: 13px; font-weight: 600; color: var(--hy-vurgu); }
.filtre-temizle-bag:hover { text-decoration: underline; }
.filter-panel-close { border-radius: 50%; background: transparent; border: 1px solid var(--hy-kenar); color: var(--hy-yazi); }
.filter-panel-body { padding: 0; }
.filter-section { margin: 0; padding: 12px 18px 14px; border-top: 1px solid var(--hy-ayrac); display: flex; flex-direction: column; gap: 8px; }
.filter-section:first-of-type { border-top: 0; padding-top: 0; }
.filter-section-title { margin: 0; font-size: 11.5px; letter-spacing: .06em; color: var(--hy-ikinci); }
.filter-select, .filter-input { margin: 0; height: 40px; border-radius: 10px; font-size: 14px; background: var(--hy-girdi); border: 1px solid var(--hy-girdi-kenar); color: var(--hy-yazi); }
[data-bs-theme="dark"] .filter-select, [data-bs-theme="dark"] .filter-input { background: var(--hy-girdi); border-color: var(--hy-girdi-kenar); color: var(--hy-yazi); }
.filter-select:focus, .filter-input:focus { border-color: var(--hy-vurgu); box-shadow: 0 0 0 3px var(--hy-vzemin); }
.filter-select:disabled { opacity: .6; }
.filtre-ikili { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.filter-price-row { align-items: center; gap: 6px; }
.filtre-tire { color: var(--hy-ikinci); font-weight: 700; }
.filtre-cipler { display: flex; gap: 6px; }
.filtre-cip { display: inline-flex; align-items: center; height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--hy-girdi-kenar);
              color: var(--hy-yazi); font-size: 13px; font-weight: 600; cursor: pointer; margin: 0; }
.btn-check:checked + .filtre-cip { background: var(--hy-vzemin); border-color: var(--hy-vurgu); color: var(--hy-vurgu); }
.btn-check:focus-visible + .filtre-cip { outline: 2px solid var(--hy-vurgu); outline-offset: 2px; }
.filtre-grup { border-top: 1px solid var(--hy-ayrac); }
.filtre-grup > summary { list-style: none; cursor: pointer; display: flex; align-items: center; padding: 13px 18px; font-size: 14px; font-weight: 600; color: var(--hy-yazi); }
.filtre-grup > summary::-webkit-details-marker { display: none; }
.filtre-grup > summary i { margin-left: auto; color: var(--hy-ikinci); transition: transform .2s ease; }
.filtre-grup[open] > summary i { transform: rotate(180deg); }
.filtre-grup-ic { padding: 0 18px 14px; display: flex; flex-direction: column; gap: 8px; }
.filtre-anahtar-satir { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0; padding: 13px 18px; border-top: 1px solid var(--hy-ayrac); font-size: 14px; font-weight: 600; color: var(--hy-yazi); cursor: pointer; }
.filtre-anahtar-satir .form-check-input:checked { background-color: #A8500A; border-color: #A8500A; }
.filter-panel-footer { padding: 14px 18px 8px; border-top: 1px solid var(--hy-ayrac); }
[data-bs-theme="dark"] .filter-panel-footer, [data-bs-theme="dark"] .filter-panel-header { border-color: var(--hy-ayrac); }
.filter-btn { height: 46px; border-radius: 12px; background: #A8500A; font: 700 15px 'Poppins', 'Segoe UI', sans-serif; }
.filter-btn:hover { background: #93440A; transform: none; box-shadow: none; }
.filter-sonuc { padding: 0 18px 14px; color: var(--hy-ikinci); font-size: 12.5px; }
@media (prefers-reduced-motion: reduce) { .filtre-grup > summary i { transition: none; } }

/* Bu alandaki ilanlar */
.map-property-panel {
    top: calc(var(--ust) + var(--ust-yuk) + 16px); right: var(--kenar); bottom: var(--kenar); width: var(--liste-gen);
    border-radius: 16px; background: var(--hy-kart); border: 1px solid var(--hy-kenar); box-shadow: 0 10px 30px rgba(0,0,0,0.22);
    transform: translateX(calc(100% + 2 * var(--kenar))); backdrop-filter: none; -webkit-backdrop-filter: none; overflow: hidden; color: var(--hy-yazi);
}
[data-bs-theme="dark"] .map-property-panel { background: var(--hy-kart); box-shadow: 0 10px 30px rgba(0,0,0,0.45); }
.map-property-panel.open { transform: none; }
.panel-header { padding: 16px 14px 12px 18px; border-bottom: 1px solid var(--hy-ayrac); gap: 10px; align-items: flex-start; }
[data-bs-theme="dark"] .panel-header { border-bottom-color: var(--hy-ayrac); }
.panel-header-title { font: 700 18px 'Poppins', 'Segoe UI', sans-serif; color: var(--hy-yazi); }
.panel-sayi { color: var(--hy-vurgu); font-variant-numeric: tabular-nums; }
.panel-header-alt { font-size: 12.5px; color: var(--hy-ikinci); margin-top: 2px; }
.panel-close-btn { border-radius: 50%; background: transparent; border: 1px solid var(--hy-kenar); color: var(--hy-yazi); flex: none; }
.panel-mobil-ac { display: none; }
.panel-body { padding: 10px 12px; }
.panel-kunye { padding: 10px 16px 12px; border-top: 1px solid var(--hy-ayrac); font-size: 11.5px; line-height: 1.5; color: var(--hy-ikinci); }
.panel-kunye a { color: var(--hy-vurgu); font-weight: 600; text-decoration: none; }
.ilan-card { gap: 12px; padding: 8px; margin-bottom: 8px; border-radius: 12px; border: 1px solid transparent; align-items: flex-start; }
.ilan-card:hover { background: var(--hy-vzemin); border-color: var(--hy-vkenar); }
.ilan-card-img, .ilan-card-placeholder { width: 116px; height: 88px; border-radius: 10px; }
.ilan-card-body { justify-content: flex-start; gap: 3px; }
.ilan-card-price { order: -1; margin: 0; font: 700 16px 'Poppins', 'Segoe UI', sans-serif; color: var(--hy-fiyat); }
.ilan-card-title { margin: 0; white-space: normal; font-size: 13px; line-height: 1.35; color: var(--hy-yazi);
                   display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ilan-card-details { font-size: 12px; color: var(--hy-ikinci); }
.empty-state { color: var(--hy-ikinci); }

/* Düğme sütunu: sağ altta; liste açıkken listenin solunda */
.map-controls { top: auto; bottom: var(--kenar); right: var(--kenar); transition: right .3s ease; }
.liste-acik .map-controls { right: calc(var(--liste-gen) + 2 * var(--kenar)); }
.map-controls .map-layer-switcher { position: relative; top: auto; left: auto; background: transparent; border-radius: 0; box-shadow: none; overflow: visible; backdrop-filter: none; -webkit-backdrop-filter: none; }
.map-controls .map-layer-toggle { width: 44px; height: 44px; color: var(--hk-simge); border-bottom: 1px solid var(--hk-cizgi); border-radius: 0; }
.map-controls .map-layer-list { position: absolute; right: calc(100% + 10px); bottom: 0; min-width: 190px; padding: 6px; border-radius: 12px;
                                background: var(--hk-zemin); border: 1px solid var(--hk-cizgi); box-shadow: 0 6px 20px rgba(0,0,0,0.25); }
.map-layer-item { border-radius: 8px; font-size: .85rem; color: var(--hk-simge); }
.map-layer-item.active { color: var(--hk-vurgu); background: var(--hk-vurgu-zemin); }
.harita-konum-uyari { top: auto; bottom: var(--kenar); right: calc(var(--kenar) + 56px); }
.liste-acik .harita-konum-uyari { right: calc(var(--liste-gen) + 2 * var(--kenar) + 56px); }
.leaflet-bottom.leaflet-left .leaflet-control-attribution { border-radius: 6px 6px 0 0; margin-left: var(--kenar); }
@media (prefers-reduced-motion: reduce) { .map-controls { transition: none; } }

/* Fiyat iğneleri: beyaz kapsül, fırsat/vitrin koyu turuncu */
.price-label { border-radius: 999px; padding: 4px 10px 4px 8px; font-size: 12px; background: #FFFFFF; color: #1A2035; border: 1px solid rgba(26,32,53,0.14); box-shadow: 0 3px 10px rgba(0,0,0,0.30); }
.price-label i { color: #A8500A; }
.price-label.firsat { background: #A8500A; color: #FFFFFF; border-color: #A8500A; }
.price-label.firsat i { color: #FFFFFF; }
[data-bs-theme="dark"] .price-label { background: #1A2035; color: #F3F4F6; border-color: rgba(255,255,255,0.25); }
[data-bs-theme="dark"] .price-label i { color: #FFA726; }
[data-bs-theme="dark"] .price-label.firsat { background: #A8500A; color: #FFFFFF; border-color: #FFA726; }
[data-bs-theme="dark"] .price-label.firsat i { color: #FFFFFF; }
.marker-cluster-small, .marker-cluster-medium, .marker-cluster-large { background-color: rgba(168,80,10,0.28) !important; }
.marker-cluster-small div, .marker-cluster-medium div, .marker-cluster-large div { background-color: rgba(168,80,10,0.94) !important; font-family: 'Poppins', 'Segoe UI', sans-serif; }

/* ── Telefon / dar ekran ── */
@media (max-width: 991.98px) {
    .fullscreen-map-container { --ust: 10px; --ust-yuk: 56px; --kenar: 10px; }
    .harita-arama { width: auto; right: var(--kenar); gap: 8px; }
    .harita-arama-kutu { height: 48px; padding: 0 6px 0 14px; }
    .harita-arama-dugme { height: 36px; padding: 0 14px; }
    .harita-cipler { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-right: calc(-1 * var(--kenar)); padding: 0 var(--kenar) 4px 0; }
    .harita-cipler::-webkit-scrollbar { display: none; }
    .hcip { flex: none; height: 34px; padding: 0 13px; font-size: 13px; }

    .map-filter-panel { top: auto; left: 0; right: 0; bottom: 0; width: auto; height: 88vh; height: 88dvh; z-index: 1200; border-radius: 20px 20px 0 0; }
    .map-filter-panel.closed { transform: translateY(105%); }

    .map-property-panel { top: auto; left: 0; right: 0; bottom: 0; width: auto; height: 78vh; height: 78dvh; border-radius: 20px 20px 0 0;
                          transform: translateY(calc(100% - 128px)); box-shadow: 0 -10px 30px rgba(0,0,0,0.25); }
    .map-property-panel.open { transform: none; }
    .map-property-panel::before { content: ""; position: absolute; top: 7px; left: 50%; width: 40px; height: 4px; margin-left: -20px; border-radius: 4px; background: var(--hy-girdi-kenar); }
    .panel-header { padding: 18px 16px 10px; align-items: center; }
    .panel-header-title { font-size: 17px; }
    .panel-header-alt { display: none; }
    .panel-close-btn { display: none; }
    .panel-mobil-ac { display: inline-flex; margin-left: auto; align-items: center; min-height: 44px; padding: 0 4px; border: 0; background: none; color: var(--hy-vurgu); font-size: 13px; font-weight: 700; }
    .panel-mobil-ac .kapat-metni { display: none; }
    .map-property-panel.open .panel-mobil-ac .ac-metni { display: none; }
    .map-property-panel.open .panel-mobil-ac .kapat-metni { display: inline; }
    #panelToggleBtn { display: none; }

    .map-controls, .liste-acik .map-controls { right: var(--kenar); bottom: 140px; }
    #btnHaritaYakin, #btnHaritaUzak, #btnHaritaTamEkran { display: none; }
    .harita-konum-uyari, .liste-acik .harita-konum-uyari { right: calc(var(--kenar) + 54px); bottom: 140px; }
    .leaflet-bottom.leaflet-left { bottom: 128px; }
}


/* ═══ 6 Eki 2026 (Kamuran: "harita-cipler de navbar'ın içine, navbar liquid glass olsun, mobile de uyarla") ═══
   Arama kutusu + çipler artık cam üst çubuğun İÇİNDE: çubuk boyu (--ust-yuk) onları da kapsayacak kadar uzar,
   DOM yerinde kalır (ortak _SiteUstCubuk'a dokunulmaz) — yalnız konumlandırma. Paneller --ust-yuk'tan hesaplanır.
     ≥1200 px : tek blok — solda logo, sağda düğmeler, ORTADA arama ve altında çipler (çubuk 112 px)
     992–1199 : üstte logo/düğmeler (60), altında tam genişlik arama, onun altında çipler (çubuk 164 px)
     <992     : telefon — üst satır 56, arama, çipler (çubuk 156 px); çipler yana kayar
   Cam: yarı saydam degrade + parlak üst kenar + iç gölge. Bulanıklık (backdrop-filter) YALNIZ fareli geniş
   ekranda — telefonda harita kaydırılırken her karede yeniden bulanıklaştırmak takılma yapar (ana sayfa çip
   kuralıyla aynı); telefonda zemin daha opak, yazı okunur kalır.
   Kontrast (en kötü: koyu uydu görüntüsü üstünde): açık #1A2035 / ~#B9BDC0 7,4 · koyu #F3F4F6 / ~#2A3040 11,6 */
.harita-ust .site-navbar,
[data-bs-theme="light"] .harita-ust .site-navbar {
    background: linear-gradient(180deg, rgba(255,255,255,0.86) 0%, rgba(255,255,255,0.74) 100%);
    border: 1px solid rgba(255,255,255,0.85);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.95), inset 0 -1px 0 rgba(26,32,53,0.06), 0 12px 32px rgba(0,0,0,0.20);
    backdrop-filter: none; -webkit-backdrop-filter: none;
    align-items: flex-start;
}
[data-bs-theme="dark"] .harita-ust .site-navbar {
    background: linear-gradient(180deg, rgba(36,44,64,0.90) 0%, rgba(15,22,35,0.82) 100%);
    border-color: rgba(255,255,255,0.16);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), inset 0 -1px 0 rgba(0,0,0,0.30), 0 12px 32px rgba(0,0,0,0.45);
}
@media (hover: hover) and (min-width: 768px) {
    .harita-ust .site-navbar,
    [data-bs-theme="light"] .harita-ust .site-navbar {
        background: linear-gradient(180deg, rgba(255,255,255,0.84) 0%, rgba(255,255,255,0.66) 100%);
        backdrop-filter: blur(20px) saturate(180%) brightness(1.08); -webkit-backdrop-filter: blur(20px) saturate(180%) brightness(1.08);
    }
    [data-bs-theme="dark"] .harita-ust .site-navbar {
        background: linear-gradient(180deg, rgba(36,44,64,0.68) 0%, rgba(15,22,35,0.50) 100%);
        backdrop-filter: blur(18px) saturate(170%); -webkit-backdrop-filter: blur(18px) saturate(170%);
    }
}
/* Cam içindeki arama kutusu ve çipler: bir ton daha opak cam katmanı */
.harita-arama-kutu { box-shadow: inset 0 1px 0 rgba(255,255,255,0.6); }
[data-bs-theme="light"] .harita-arama-kutu { background: rgba(255,255,255,0.94); border-color: rgba(26,32,53,0.14); }
[data-bs-theme="dark"] .harita-arama-kutu { background: rgba(15,22,35,0.62); border-color: rgba(255,255,255,0.18); box-shadow: inset 0 1px 0 rgba(255,255,255,0.08); }
.hcip { box-shadow: inset 0 1px 0 rgba(255,255,255,0.7); }
[data-bs-theme="light"] .hcip:not(.secili) { background: rgba(255,255,255,0.90); border-color: rgba(26,32,53,0.14); }
[data-bs-theme="dark"] .hcip:not(.secili) { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.18); box-shadow: inset 0 1px 0 rgba(255,255,255,0.10); }
.harita-arama { z-index: 1101; }

/* ── ≥1200: ortada arama + altında çipler ── */
@media (min-width: 1200px) {
    .fullscreen-map-container { --ust-yuk: 112px; }
    /* 🪤 Açık temanın [data-bs-theme="light"] seçicisi daha güçlü — onu da yazmazsan açık temada logo/düğmeler üste yapışır */
    .harita-ust .site-navbar,
    [data-bs-theme="light"] .harita-ust .site-navbar { align-items: center; }
    .harita-arama { top: calc(var(--ust) + 10px); left: 50%; right: auto; transform: translateX(-50%); width: auto; align-items: center; gap: 10px; }
    .harita-arama-kutu { width: clamp(300px, calc(100vw - 960px), 480px); height: 44px; border-radius: 12px; padding: 0 5px 0 14px; }
    .harita-arama-dugme { height: 34px; padding: 0 16px; }
    .harita-cipler { max-width: calc(100vw - 2 * (var(--kenar) + 370px)); min-width: 0; padding-bottom: 0; }
    .hcip { height: 34px; }
    .harita-arama-uyari { position: absolute; top: calc(100% + 18px); left: 50%; transform: translateX(-50%); white-space: nowrap; }
}
/* Çubuk ortasına yer: <1600 px'te "Liste görünümü" yalnız simge (adı title + ekran okuyucuda kalır),
   <1400 px'te telefon çipi de gizlenir (numara mobil menüde ve sayfada duruyor) */
@media (min-width: 1200px) and (max-width: 1599.98px) {
    .harita-ust .uc-sade[href="/Home/Ilanlar"] { font-size: 0; gap: 0; width: 38px; padding: 0; }
    .harita-ust .uc-sade[href="/Home/Ilanlar"] i { font-size: 1rem; }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .harita-ust .uc-tel { display: none; }
}

/* ── 992–1199: üstte logo/düğmeler, altında arama, en altta çipler — hepsi camın içinde ── */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .fullscreen-map-container { --ust-yuk: 164px; }
    .harita-arama { top: calc(var(--ust) + 64px); left: calc(var(--kenar) + 14px); right: calc(var(--kenar) + 14px); width: auto; gap: 10px; }
    .harita-arama-kutu { height: 44px; box-shadow: none; }
}

/* ── Telefon (<992): üst satır 56 + arama + çipler, tek cam blok ── */
@media (max-width: 991.98px) {
    .fullscreen-map-container { --ust-yuk: 156px; }
    .harita-ust .site-navbar { padding: 0 6px 0 12px; }
    .harita-ust .site-navbar > .container-fluid { min-height: 56px; }
    .harita-arama { top: calc(var(--ust) + 58px); left: calc(var(--kenar) + 10px); right: calc(var(--kenar) + 10px); width: auto; gap: 8px; }
    .harita-arama-kutu { height: 44px; padding: 0 5px 0 12px; }
    .harita-arama-dugme { height: 34px; }
    .harita-cipler { margin-right: -10px; padding: 0 10px 2px 0; }
    .hcip { height: 34px; }
    /* Açılır mobil menü camın altından açılır */
    .harita-ust .site-navbar .navbar-collapse { top: calc(100% + 8px); }
}
/* Paneller camın altından başlar (geniş ekran) */
@media (min-width: 992px) {
    .map-filter-panel { top: calc(var(--ust) + var(--ust-yuk) + 12px); }
    .map-property-panel { top: calc(var(--ust) + var(--ust-yuk) + 12px); }
}

/* ═══ 6 Eki 2026 — "MÜŞTERİ HARİTAYA ODAKLANSIN" (Kamuran, patron isteği) ═══
   • Üst çubuk TEPEYE yapışık (boşluk/yuvarlak köşe yok) ve İNCE: geniş ekranda tek satır — solda logo, ortada
     arama + yanında çipler (yana kayar), sağda düğmeler (56 px). Dar ekranda/telefonda arama + çipler tek satır.
   • Düğme sütunu daha küçük (36 px) ve SAĞ ORTADA; liste açıkken listenin solunda.
   • İlan listesi varsayılan kapalı (betikte). Paneller --ust-yuk'tan hesaplandığı için kendiliğinden yukarı kayar. */
.fullscreen-map-container { --ust: 0px; }
.harita-ust .site-navbar,
[data-bs-theme="light"] .harita-ust .site-navbar,
[data-bs-theme="dark"] .harita-ust .site-navbar {
    top: 0; left: 0; right: 0; border-radius: 0;
    border-width: 0 0 1px 0; padding-top: 0 !important; padding-bottom: 0 !important;   /* py-2 !important ezilsin */
}
.harita-ust .site-navbar > .container-fluid { min-height: 52px; padding-left: 12px; padding-right: 8px; }
.harita-arama-kutu { height: 40px; border-radius: 11px; padding: 0 4px 0 12px; }
.harita-arama-dugme { height: 32px; padding: 0 14px; font-size: 13px; }
.hcip { height: 32px; padding: 0 12px; font-size: 13px; }

@media (min-width: 1200px) {
    .fullscreen-map-container { --ust-yuk: 56px; }
    .harita-ust .site-navbar > .container-fluid { min-height: 56px; }
    .harita-arama {
        top: 8px; left: 50%; right: auto; transform: translateX(-50%);
        flex-direction: row; align-items: center; gap: 10px;
        width: calc(100vw - 760px); max-width: 900px;
    }
    .harita-arama-kutu { flex: none; width: clamp(240px, 40%, 340px); }
    .harita-cipler { flex: 1 1 auto; min-width: 0; max-width: none; justify-content: flex-start; padding-bottom: 0; }
    .liste-acik .harita-cipler { max-width: none; }
    .harita-arama-uyari { top: calc(100% + 10px); }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .fullscreen-map-container { --ust-yuk: 104px; }
    .harita-arama { top: 56px; flex-direction: row; align-items: center; gap: 10px; }
    .harita-arama-kutu { flex: none; width: 300px; }
    .harita-cipler { flex: 1 1 auto; min-width: 0; }
}
@media (max-width: 991.98px) {
    .fullscreen-map-container { --ust-yuk: 134px; }
    .harita-ust .site-navbar > .container-fluid { min-height: 50px; }
    .harita-arama { top: 52px; left: 10px; right: 10px; gap: 6px; }
    .harita-cipler { margin-right: -10px; padding: 0 10px 2px 0; }
}

/* Düğme sütunu: küçük, sağ ortada */
.map-controls, .liste-acik .map-controls { top: 50%; bottom: auto; transform: translateY(-50%); border-radius: 12px; }
.liste-acik .map-controls { right: calc(var(--liste-gen) + 2 * var(--kenar)); }
.map-control-btn, .map-controls .map-layer-toggle { width: 36px; height: 36px; }
.map-control-btn i { font-size: 1rem; }
.map-control-btn:first-child { border-radius: 11px 11px 0 0; }
.map-control-btn:last-child { border-radius: 0 0 11px 11px; }
.map-controls .map-layer-list { bottom: auto; top: 0; }
.harita-konum-uyari, .liste-acik .harita-konum-uyari { top: 50%; bottom: auto; transform: translateY(-50%); }
.harita-konum-uyari { right: calc(var(--kenar) + 48px); }
.liste-acik .harita-konum-uyari { right: calc(var(--liste-gen) + 2 * var(--kenar) + 48px); }
@media (max-width: 991.98px) {
    .map-controls, .liste-acik .map-controls { right: 8px; top: 50%; bottom: auto; }
    .harita-konum-uyari, .liste-acik .harita-konum-uyari { right: 54px; top: 50%; bottom: auto; }
}

/* ── Çip sırası sığsın (6 Eki 2026): Filtreler + Fiyat sabit başta, tip çipleri kendi kutusunda yana kayar ── */
.harita-cipler { overflow: visible; flex-wrap: nowrap; align-items: center; gap: 8px; }
.harita-cipler > .hcip { flex: none; }
.hcip-ayrac { flex: none; width: 1px; height: 20px; background: var(--hy-girdi-kenar); }
.hcip-kaydir {
    flex: 1 1 auto; min-width: 0; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none;
    padding-right: 28px; scroll-padding-right: 28px;
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent);
            mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent);
}
.hcip-kaydir::-webkit-scrollbar { display: none; }
.hcip-kaydir > .hcip { flex: none; }
@media (min-width: 1200px) {
    /* Arama kutusu biraz daraldı: çiplere yer kalsın */
    .harita-arama-kutu { width: clamp(220px, 30%, 300px); }
}

/* Çip okları (6 Eki 2026) — ana sayfa .kategori-ok ile aynı dil: yuvarlak, camlı; uca gelince gizlenir */
.hcip-ok { flex: none; width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; padding: 0;
           background: var(--hy-cip); color: var(--hy-yazi); border: 1px solid var(--hy-cip-kenar); box-shadow: inset 0 1px 0 rgba(255,255,255,0.6), 0 2px 8px rgba(0,0,0,0.15); cursor: pointer; }
.hcip-ok[hidden] { display: none; }
.hcip-ok:hover { border-color: var(--hy-vurgu); color: var(--hy-vurgu); }
.hcip-ok:focus-visible { outline: 2px solid var(--hy-vurgu); outline-offset: 2px; }
[data-bs-theme="dark"] .hcip-ok { background: rgba(255,255,255,0.10); border-color: rgba(255,255,255,0.20); box-shadow: inset 0 1px 0 rgba(255,255,255,0.10); }
/* Sağdaki solma yalnız devamı varken; okla birlikte iç boşluk gerekmez */
.hcip-kaydir { padding-right: 0; scroll-padding-right: 0; scroll-behavior: smooth; }
.hcip-kaydir:not(.devami-var) { -webkit-mask-image: none; mask-image: none; }
.hcip-kaydir.devami-var { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent); }
@media (prefers-reduced-motion: reduce) { .hcip-kaydir { scroll-behavior: auto; } }

/* ═══ ÖNE ÇIKMA (Kamuran, 8 Eki 2026: "ilan ön plana çıkmıyor") ══════════════════════
   Bir ilanın balonu açılınca: uydu zemini kararır, seçili fiyat etiketi turuncu ve büyük,
   diğer etiketler/öbekler soluk. Balon kapanınca hepsi geri gelir.
   Sınıflar JS'te: #mapContainer.ilan-secili + .price-marker.secili (haritali-ara.js ilanSecimi). */
#mapContainer .leaflet-tile-pane { transition: filter .2s ease; }
#mapContainer.ilan-secili .leaflet-tile-pane { filter: brightness(.58) saturate(.8); }
#mapContainer.ilan-secili .price-marker:not(.secili),
#mapContainer.ilan-secili .marker-cluster { opacity: .4; transition: opacity .2s ease; }
#mapContainer .price-marker, #mapContainer .marker-cluster { transition: opacity .2s ease; }
.price-marker.secili .price-label,
[data-bs-theme="dark"] .price-marker.secili .price-label {
    background: #E8711E; color: #FFFFFF; border: 2px solid #FFFFFF;
    transform: scale(1.18);
    box-shadow: 0 0 0 4px rgba(232,113,30,.35), 0 6px 18px rgba(0,0,0,.45);
}
.price-marker.secili .price-label i,
[data-bs-theme="dark"] .price-marker.secili .price-label i { color: #FFFFFF; }
#mapContainer.ilan-secili .ilan-popup-wrapper .leaflet-popup-content-wrapper { box-shadow: 0 18px 50px rgba(0,0,0,.5); }
@media (prefers-reduced-motion: reduce) {
    #mapContainer .leaflet-tile-pane, #mapContainer .price-marker, #mapContainer .marker-cluster { transition: none; }
}

/* ═══ ÖBEK BÖLÜNME / BİRLEŞME EFEKTİ (8 Eki 2026) ═══════════════════════════════
   Sunucu öbekleri gelince balonlar markercluster'daki gibi kayarak bölünür/birleşir.
   Sınıf yalnız geçiş süresince #mapContainer'da (haritali-ara.js obekleriCiz). */
#mapContainer.obek-anim .leaflet-marker-icon.obek-balon { transition: transform .35s ease-out, opacity .35s ease-in; }
@media (prefers-reduced-motion: reduce) {
    #mapContainer.obek-anim .leaflet-marker-icon.obek-balon { transition: none; }
}

/* ═══ İNCE PİN: kart yüklenirken iskelet (8 Eki 2026, hız paketi 3) ═══ */
.ilan-card-yukleniyor { pointer-events: none; }
.ilan-card-yukleniyor .yukleniyor-cubuk { height: 12px; border-radius: 6px; background: rgba(127,127,127,.18); margin: 6px 0; }
.ilan-card-yukleniyor .yukleniyor-cubuk.kisa { width: 55%; }
