/* emlak-ofisi-mahalle — özgün tema (kaynak: prototip site.css; dönüştürücü taslağı) */
/* MAHALLE — mahalle emlakçısı: arama öncelikli, bol ilan, şematik harita */
:root {
  --zemin: var(--dj-bg,#FFFFFF);
  --zemin-2: var(--dj-bg-alt,#F5F2EC);
  --zemin-3: #ECE7DE;
  --lacivert: var(--dj-text,#15233B);
  --lacivert-2: var(--dj-dark,#2B3A55);
  --gri: #667085;
  --gri-acik: var(--dj-muted,#98A2B3);
  --cizgi: #E6E1D8;
  --kiremit: var(--dj-primary,#E0522B);
  --kiremit-koyu: #C24320;
  --kiremit-acik: #FDECE6;
  --deniz: #1C7AA6;
  --deniz-acik: #E4F1F7;
  --sari: var(--dj-accent,#FFD45A);
  --yesil: #1FA463;
  --baslik: var(--dj-font-heading);
  --govde: var(--dj-font-body);
  --r: 16px;
  --r-k: 10px;
  --golge: 0 1px 2px color-mix(in srgb,var(--dj-text) 6%,transparent), 0 8px 24px -8px color-mix(in srgb,var(--dj-text) 12%,transparent);
  --golge-b: 0 2px 4px color-mix(in srgb,var(--dj-text) 6%,transparent), 0 24px 48px -16px color-mix(in srgb,var(--dj-text) 22%,transparent);
  --kenar: clamp(16px, 4vw, 40px);
  --azami: 1280px;
}
.ot-mahalle, .ot-mahalle *, .ot-mahalle *::before, .ot-mahalle *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body.ot-mahalle { margin: 0; background: var(--zemin); color: var(--lacivert); font: 400 16px/1.6 var(--govde); -webkit-font-smoothing: antialiased; }
:where(.ot-mahalle) img { display: block; max-width: 100%; height: auto; }
:where(.ot-mahalle) a { color: inherit; text-decoration: none; }
:where(.ot-mahalle) :is(button, input, select, textarea) { font: inherit; color: inherit; }
:where(.ot-mahalle) button { cursor: pointer; background: none; border: 0; padding: 0; }
.ot-mahalle :focus-visible { outline: 2px solid var(--kiremit); outline-offset: 2px; }
:where(.ot-mahalle) :is(h1, h2, h3, h4) { font-family: var(--baslik); margin: 0; line-height: 1.12; letter-spacing: -.02em; }
:where(.ot-mahalle) p { margin: 0 0 1em; }
.kap { width: 100%; max-width: var(--azami); margin: 0 auto; padding: 0 var(--kenar); }
.gizli { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ik { width: 18px; height: 18px; flex: none; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- Üst şerit + başlık ---------- */
.serit { background: var(--lacivert); color: #D5DBE6; font-size: 13.5px; }
.serit .kap { display: flex; align-items: center; justify-content: space-between; gap: 16px; height: 40px; }
.serit-sol, .serit-sag { display: flex; align-items: center; gap: 22px; }
.acik-durum { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-weight: 600; }
.acik-durum i { width: 8px; height: 8px; border-radius: 50%; background: var(--yesil); box-shadow: 0 0 0 4px rgba(31, 164, 99, .25); }
.acik-durum.kapali i { background: var(--gri-acik); box-shadow: 0 0 0 4px rgba(152, 162, 179, .2); }
.serit a { display: inline-flex; align-items: center; gap: 7px; }
.serit a:hover { color: #fff; }
.serit .ik { width: 15px; height: 15px; }
.basl { position: sticky; top: 0; z-index: 40; background: rgba(255, 255, 255, .96); backdrop-filter: blur(8px); border-bottom: 1px solid var(--cizgi); }
.basl .kap { display: flex; align-items: center; gap: 28px; height: 74px; }
.logo { display: flex; align-items: center; gap: 11px; flex: none; }
.logo-isaret { width: 40px; height: 40px; flex: none; }
.logo b { display: block; font: 800 22px/1 var(--baslik); letter-spacing: -.03em; }
.logo small { display: block; font-size: 11.5px; color: var(--gri); letter-spacing: .02em; margin-top: 3px; }
.ana-menu { display: flex; gap: 4px; margin-left: 10px; }
.ana-menu a { padding: 9px 14px; border-radius: 999px; font-weight: 600; font-size: 15px; color: var(--lacivert-2); transition: background .2s, color .2s; }
.ana-menu a:hover, .ana-menu a[aria-current='page'] { background: var(--zemin-2); color: var(--lacivert); }
.basl-sag { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.fav-dugme { position: relative; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--cizgi); transition: border-color .2s; }
.fav-dugme:hover { border-color: var(--lacivert); }
.fav-dugme .ik { width: 19px; height: 19px; }
.fav-sayi { position: absolute; top: -3px; right: -3px; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 99px; background: var(--kiremit); color: #fff; font-size: 11px; font-weight: 700; display: grid; place-items: center; }
.fav-sayi:empty { display: none; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; height: 48px; padding: 0 20px; border-radius: 12px; font-weight: 700; font-size: 15px; transition: background .2s, transform .15s, box-shadow .2s; white-space: nowrap; }
.btn:active { transform: translateY(1px); }
.btn-kiremit { background: var(--kiremit); color: #fff; box-shadow: 0 6px 16px -6px rgba(224, 82, 43, .6); }
.btn-kiremit:hover { background: var(--kiremit-koyu); }
.btn-lacivert { background: var(--lacivert); color: #fff; }
.btn-lacivert:hover { background: var(--lacivert-2); }
.btn-wa { background: #1FA855; color: #fff; }
.btn-wa:hover { background: #178a45; }
.btn-cizgi { border: 1.5px solid var(--cizgi); background: #fff; }
.btn-cizgi:hover { border-color: var(--lacivert); }
.btn-tam { width: 100%; }
.menu-dugme { display: none; width: 44px; height: 44px; border-radius: 12px; border: 1px solid var(--cizgi); place-items: center; }

/* Mobil çekmece */
.cekmece { position: fixed; inset: 0; z-index: 70; overflow: hidden; background: rgba(21, 35, 59, .45); opacity: 0; visibility: hidden; transition: opacity .25s, visibility 0s .25s; }
.cekmece.acik { opacity: 1; visibility: visible; transition: opacity .25s; }
.cekmece-ic { position: absolute; top: 0; right: 0; bottom: 0; width: min(360px, 88vw); background: #fff; padding: 20px; transform: translateX(100%); transition: transform .3s cubic-bezier(.2, .8, .2, 1); display: flex; flex-direction: column; gap: 6px; overflow-y: auto; }
.cekmece.acik .cekmece-ic { transform: none; }
.cekmece-ic a.m { padding: 14px 6px; border-bottom: 1px solid var(--cizgi); font: 700 19px/1.2 var(--baslik); }
.cekmece-ust { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }

/* Mobil alt sekme çubuğu */
.sekme-cubugu { display: none; }

/* ---------- Hero: arama konsolu ---------- */
.arama-hero { position: relative; background: var(--zemin-2); padding: 56px 0 64px; overflow: hidden; }
.arama-hero::before { content: ''; position: absolute; inset: 0; opacity: .55; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='320' fill='none' stroke='%23DDD5C8' stroke-width='1.2'%3E%3Cpath d='M0 60h480M0 170h480M0 262h480M70 0v320M190 0v320M318 0v320M420 0v320M0 320 190 60M318 320l162-210'/%3E%3Cpath stroke-width='5' stroke='%23E6DFD3' d='M0 118h480M250 0v320'/%3E%3C/svg%3E"); }
.arama-hero .kap { position: relative; }
.hero-ust { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 30px; align-items: end; margin-bottom: 28px; }
.hero-ust .rozet { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 8px; border-radius: 99px; background: #fff; border: 1px solid var(--cizgi); font-size: 13.5px; font-weight: 600; margin-bottom: 18px; }
.hero-ust .rozet .ik { width: 16px; height: 16px; color: var(--kiremit); }
.arama-hero h1 { font-size: clamp(34px, 4.6vw, 58px); font-weight: 800; letter-spacing: -.035em; max-width: 17ch; }
.arama-hero h1 span { color: var(--kiremit); }
.hero-hizli { display: grid; gap: 10px; justify-items: end; text-align: right; }
.hero-hizli p { margin: 0; font-size: 14px; color: var(--gri); max-width: 300px; }
.hero-hizli .btnlar { display: flex; gap: 10px; }

.konsol { background: #fff; border-radius: 22px; box-shadow: var(--golge-b); border: 1px solid var(--cizgi); }
.konsol-sekme { display: flex; gap: 6px; padding: 10px 10px 0; }
.konsol-sekme label span { position: relative; padding: 12px 20px 14px; border-radius: 12px 12px 0 0; font: 700 16px/1 var(--baslik); color: var(--gri); transition: color .2s; }
.konsol-sekme input:checked + span { color: var(--lacivert); }
.konsol-sekme input:checked + span::after { content: ''; position: absolute; left: 20px; right: 20px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--kiremit); }
.konsol-sekme label:has(input[value='kiralik']) input:checked + span::after { background: var(--deniz); }
.konsol-alanlar { display: grid; grid-template-columns: 1.1fr 1fr 1.75fr 1.2fr auto; border-top: 1px solid var(--cizgi); }
.k-alan { padding: 14px 18px 16px; border-right: 1px solid var(--cizgi); display: grid; gap: 6px; min-width: 0; }
.k-alan > label, .k-alan > span { font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--gri); }
.k-alan select, .k-alan input { width: 100%; border: 0; background: transparent; font-size: 16.5px; font-weight: 600; padding: 2px 0; outline: none; min-width: 0; }
.k-alan select { -webkit-appearance: none; appearance: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2315233B' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right center; padding-right: 20px; cursor: pointer; }
.k-alan input::placeholder { color: var(--gri-acik); font-weight: 500; }
.k-fiyat { display: flex; align-items: center; gap: 8px; }
.k-fiyat i { color: var(--gri-acik); font-style: normal; }
.cipler { display: flex; gap: 6px; flex-wrap: wrap; }
.cip { height: 32px; padding: 0 11px; border-radius: 99px; border: 1.5px solid var(--cizgi); font-size: 14px; font-weight: 600; transition: background .15s, border-color .15s, color .15s; background: #fff; }
.cip:hover { border-color: var(--lacivert); }
.cip[aria-pressed='true'] { background: var(--lacivert); border-color: var(--lacivert); color: #fff; }
.konsol-git { padding: 12px; display: flex; align-items: stretch; }
.konsol-git .btn { height: auto; min-height: 56px; border-radius: 14px; padding: 0 24px; flex-direction: column; gap: 2px; line-height: 1.15; }
.konsol-git .btn small { font-weight: 500; font-size: 12.5px; opacity: .85; }
.sayac-say { display: inline-block; font-variant-numeric: tabular-nums; }
.mahalle-ciz { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 22px; }
.mahalle-ciz > span { font-size: 13.5px; color: var(--gri); font-weight: 600; margin-right: 4px; }
.mahalle-ciz a { display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px; border-radius: 99px; background: #fff; border: 1px solid var(--cizgi); font-size: 14px; font-weight: 600; transition: border-color .15s, transform .15s; }
.mahalle-ciz a:hover { border-color: var(--lacivert); transform: translateY(-1px); }
.mahalle-ciz a b { font-size: 12px; color: var(--gri); font-weight: 700; }

/* ---------- Bölüm ---------- */
.bolum { padding: 72px 0; }
.bolum.gri { background: var(--zemin-2); }
.bolum-bas { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; flex-wrap: wrap; }
.bolum-bas h2 { font-size: clamp(26px, 2.8vw, 36px); font-weight: 800; }
.bolum-bas p { margin: 6px 0 0; color: var(--gri); }
.link-ok { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--kiremit); }
.link-ok:hover { gap: 10px; }
.link-ok .ik { width: 17px; height: 17px; transition: transform .2s; }
.segment { display: inline-flex; padding: 4px; border-radius: 12px; background: var(--zemin-2); border: 1px solid var(--cizgi); }
.segment button { padding: 8px 14px; border-radius: 9px; font-weight: 700; font-size: 14px; color: var(--gri); transition: background .2s, color .2s; }
.segment button[aria-pressed='true'] { background: #fff; color: var(--lacivert); box-shadow: 0 1px 3px rgba(21, 35, 59, .12); }

/* ---------- İlan kartı ---------- */
.ilan-izgara { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.ilan-izgara.uc { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ik-kart { position: relative; background: #fff; border: 1px solid var(--cizgi); border-radius: var(--r); overflow: hidden; display: flex; flex-direction: column; transition: transform .2s, box-shadow .2s, border-color .2s; animation: kartGel .35s ease both; }
.ik-kart:hover, .ik-kart.vurgu { transform: translateY(-3px); box-shadow: var(--golge-b); border-color: transparent; }
@keyframes kartGel { from { opacity: 0; transform: translateY(8px); } }
.ik-foto { position: relative; aspect-ratio: 4 / 3; background: var(--zemin-3); overflow: hidden; }
.ik-foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.ik-kart:hover .ik-foto img { transform: scale(1.04); }
.ik-rozetler { position: absolute; left: 12px; top: 12px; display: flex; gap: 6px; }
.rozet-islem { height: 26px; padding: 0 10px; border-radius: 8px; font-size: 12.5px; font-weight: 700; color: #fff; display: inline-flex; align-items: center; background: var(--kiremit); }
.rozet-islem.kiralik { background: var(--deniz); }
.rozet-yeni { height: 26px; padding: 0 9px; border-radius: 8px; font-size: 12.5px; font-weight: 800; background: var(--sari); color: var(--lacivert); display: inline-flex; align-items: center; }
.ik-say { position: absolute; right: 12px; bottom: 12px; height: 26px; padding: 0 9px; border-radius: 8px; background: rgba(21, 35, 59, .72); color: #fff; font-size: 12.5px; font-weight: 600; display: inline-flex; gap: 5px; align-items: center; }
.ik-say .ik { width: 14px; height: 14px; }
.kalp { position: absolute; right: 12px; top: 12px; z-index: 2; width: 38px; height: 38px; border-radius: 50%; background: rgba(255, 255, 255, .95); display: grid; place-items: center; box-shadow: 0 2px 8px rgba(21, 35, 59, .18); transition: transform .15s; }
.kalp:hover { transform: scale(1.08); }
.kalp .ik { width: 18px; height: 18px; }
.kalp[aria-pressed='true'] .ik { fill: var(--kiremit); stroke: var(--kiremit); }
.kalp[aria-pressed='true'] { animation: kalpAt .35s; }
@keyframes kalpAt { 50% { transform: scale(1.22); } }
.ik-govde { padding: 16px 16px 14px; display: grid; gap: 6px; flex: 1; }
.ik-fiyat { font: 800 22px/1.1 var(--baslik); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.ik-fiyat small { font: 600 14px var(--govde); color: var(--gri); letter-spacing: 0; }
.ik-baslik { font-size: 15px; font-weight: 600; line-height: 1.35; color: var(--lacivert-2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em; }
.ik-baslik a::after { content: ''; position: absolute; inset: 0; }
.ik-yer { display: flex; align-items: center; gap: 5px; font-size: 13.5px; color: var(--gri); }
.ik-yer .ik { width: 15px; height: 15px; }
.ik-ozellik { display: flex; gap: 0; margin-top: 6px; padding-top: 12px; border-top: 1px dashed var(--cizgi); font-size: 13.5px; font-weight: 600; color: var(--lacivert-2); }
.ik-ozellik span { display: inline-flex; align-items: center; gap: 6px; padding-right: 12px; margin-right: 12px; border-right: 1px solid var(--cizgi); white-space: nowrap; }
.ik-ozellik span:last-child { border: 0; margin: 0; padding: 0; }
.ik-ozellik .ik { width: 15px; height: 15px; color: var(--gri); }
.bos-durum { grid-column: 1 / -1; text-align: center; padding: 50px 20px; background: var(--zemin-2); border-radius: var(--r); color: var(--gri); }
.bos-durum b { display: block; color: var(--lacivert); font: 700 19px var(--baslik); margin-bottom: 6px; }

/* ---------- Harita (imza bileşen) ---------- */
.harita-blok { display: grid; grid-template-columns: 380px minmax(0, 1fr); gap: 0; border: 1px solid var(--cizgi); border-radius: 22px; overflow: hidden; background: #fff; box-shadow: var(--golge); }
.harita-liste { max-height: 560px; overflow-y: auto; border-right: 1px solid var(--cizgi); scrollbar-width: thin; }
.hl-ust { position: sticky; top: 0; z-index: 2; background: #fff; padding: 16px 18px; border-bottom: 1px solid var(--cizgi); display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 14px; font-weight: 600; }
.hl-oge { display: grid; grid-template-columns: 92px 1fr; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--cizgi); transition: background .15s; cursor: pointer; position: relative; }
.hl-oge:hover, .hl-oge.vurgu { background: var(--zemin-2); }
.hl-oge img { width: 92px; height: 70px; object-fit: cover; border-radius: 10px; }
.hl-oge b { font: 800 17px/1.2 var(--baslik); display: block; }
.hl-oge span { display: block; font-size: 13px; color: var(--gri); line-height: 1.4; }
.hl-oge .t { color: var(--lacivert-2); font-weight: 600; }
.harita { position: relative; min-height: 560px; background: #EFEBE3; overflow: hidden; }
.harita svg.zemin { position: absolute; inset: 0; width: 100%; height: 100%; }
.pin { position: absolute; transform: translate(-50%, -100%); z-index: 2; height: 30px; padding: 0 10px; border-radius: 9px; background: var(--kiremit); color: #fff; font: 800 13px/30px var(--baslik); white-space: nowrap; box-shadow: 0 4px 10px -2px rgba(21, 35, 59, .35); transition: transform .18s, background .18s, z-index 0s; }
.pin::after { content: ''; position: absolute; left: 50%; bottom: -5px; margin-left: -5px; border: 5px solid transparent; border-bottom: 0; border-top-color: inherit; border-top-color: var(--kiremit); }
.pin.kiralik { background: var(--deniz); }
.pin.kiralik::after { border-top-color: var(--deniz); }
.pin:hover, .pin.vurgu { transform: translate(-50%, -100%) scale(1.14); z-index: 5; background: var(--lacivert); }
.pin:hover::after, .pin.vurgu::after { border-top-color: var(--lacivert); }
.pin.soluk { opacity: .28; }
.pin-pop { position: absolute; z-index: 8; width: 250px; transform: translate(-50%, calc(-100% - 44px)); background: #fff; border-radius: 14px; box-shadow: var(--golge-b); overflow: hidden; animation: popGel .2s ease; }
@keyframes popGel { from { opacity: 0; transform: translate(-50%, calc(-100% - 36px)); } }
.pin-pop img { width: 100%; height: 120px; object-fit: cover; }
.pin-pop div { padding: 10px 12px 12px; }
.pin-pop b { font: 800 18px var(--baslik); display: block; }
.pin-pop span { font-size: 13px; color: var(--gri); display: block; }
.pin-pop a { display: inline-flex; margin-top: 8px; font-weight: 700; color: var(--kiremit); font-size: 14px; }
.pin-pop button { position: absolute; top: 8px; right: 8px; width: 28px; height: 28px; border-radius: 50%; background: rgba(255, 255, 255, .95); display: grid; place-items: center; }
.harita-lejant { position: absolute; left: 14px; bottom: 14px; z-index: 3; display: flex; gap: 12px; padding: 8px 12px; border-radius: 10px; background: rgba(255, 255, 255, .92); font-size: 12.5px; font-weight: 600; }
.harita-lejant i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; background: var(--kiremit); }
.harita-lejant i.k { background: var(--deniz); }
.harita-ofis { position: absolute; z-index: 3; transform: translate(-50%, -50%); width: 46px; height: 46px; border-radius: 50%; background: var(--lacivert); color: #fff; display: grid; place-items: center; box-shadow: 0 0 0 6px rgba(21, 35, 59, .15); }
.harita-ofis .ik { width: 20px; height: 20px; }
.harita-ofis span { position: absolute; top: 52px; left: 50%; transform: translateX(-50%); white-space: nowrap; font-size: 12px; font-weight: 700; color: var(--lacivert); background: #fff; padding: 3px 8px; border-radius: 6px; box-shadow: var(--golge); }
.harita-not { font-size: 12.5px; color: var(--gri); margin-top: 10px; }

/* ---------- Kategori ---------- */
.kategori { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.kat-kart { position: relative; display: flex; justify-content: space-between; align-items: end; min-height: 150px; padding: 20px; border-radius: var(--r); background: #fff; border: 1px solid var(--cizgi); overflow: hidden; transition: border-color .2s, transform .2s; }
.kat-kart:hover { border-color: var(--lacivert); transform: translateY(-2px); }
.kat-kart h3 { font-size: 21px; font-weight: 800; }
.kat-kart p { margin: 4px 0 0; color: var(--gri); font-size: 14px; }
.kat-kart .say { font: 800 44px/1 var(--baslik); color: var(--zemin-3); letter-spacing: -.04em; transition: color .2s; }
.kat-kart:hover .say { color: var(--kiremit); }
.kat-kart svg.cizim { position: absolute; right: 16px; top: 16px; width: 44px; height: 44px; color: var(--kiremit); stroke-width: 1.6; }

/* ---------- Satıcı bandı ---------- */
.satici { background: var(--lacivert); color: #fff; border-radius: 26px; padding: clamp(28px, 4vw, 52px); display: grid; grid-template-columns: 1fr 420px; gap: 48px; align-items: center; position: relative; overflow: hidden; }
.satici::before { content: ''; position: absolute; right: -120px; top: -140px; width: 420px; height: 420px; border-radius: 50%; border: 60px solid rgba(255, 255, 255, .04); }
.satici h2 { font-size: clamp(28px, 3vw, 40px); font-weight: 800; }
.satici > div > p { color: #C8D0DD; margin: 14px 0 26px; max-width: 520px; }
.adimlar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.adimlar div { padding: 14px; border-radius: 12px; background: rgba(255, 255, 255, .06); font-size: 14px; color: #DDE3EC; }
.adimlar b { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; background: var(--kiremit); color: #fff; font-weight: 800; margin-bottom: 10px; }
.mini-form { position: relative; background: #fff; color: var(--lacivert); border-radius: 18px; padding: 22px; display: grid; gap: 12px; }
.mini-form h3 { font-size: 19px; font-weight: 800; }

/* ---------- Form alanları ---------- */
.f-alan { display: grid; gap: 6px; }
.f-alan label { font-size: 13.5px; font-weight: 700; color: var(--lacivert-2); }
.f-alan input, .f-alan select, .f-alan textarea { width: 100%; height: 48px; padding: 0 14px; border: 1.5px solid var(--cizgi); border-radius: 12px; background: #fff; font-size: 15.5px; outline: none; transition: border-color .15s, box-shadow .15s; }
.f-alan textarea { height: auto; min-height: 110px; padding: 12px 14px; resize: vertical; }
.f-alan select { -webkit-appearance: none; appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2315233B' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center; padding-right: 36px; }
.f-alan input:focus, .f-alan select:focus, .f-alan textarea:focus { border-color: var(--lacivert); box-shadow: 0 0 0 4px rgba(21, 35, 59, .08); }
.f-ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.f-onay { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: var(--gri); }
.f-onay input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--lacivert); flex: none; }
.f-sonuc { display: none; padding: 16px; border-radius: 12px; background: #E8F6EE; color: #11663B; font-weight: 600; }
form.gonderildi .f-sonuc { display: block; }
form.gonderildi > :not(.f-sonuc):not(h3) { display: none; }

/* ---------- Ofis kartı ---------- */
.ofis { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.ofis-kart { border: 1px solid var(--cizgi); border-radius: 22px; padding: 26px; background: #fff; }
.ofis-kart h3 { font-size: 22px; font-weight: 800; margin-bottom: 14px; }
.saat-tablo { display: grid; gap: 0; margin: 4px 0 18px; }
.saat-tablo div { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px dashed var(--cizgi); font-size: 15px; }
.saat-tablo div.bugun { font-weight: 700; }
.saat-tablo div.bugun span:first-child::after { content: ' · bugün'; color: var(--kiremit); font-weight: 600; }
.iletisim-satir { display: flex; align-items: center; gap: 12px; padding: 10px 0; font-weight: 600; }
.iletisim-satir .kutu { width: 40px; height: 40px; border-radius: 11px; background: var(--zemin-2); display: grid; place-items: center; flex: none; }
.iletisim-satir small { display: block; font-weight: 500; color: var(--gri); font-size: 13px; }
.danisman { display: grid; grid-template-columns: 46px 1fr auto; gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--cizgi); }
.danisman:last-child { border-bottom: 0; }
.avatar { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; font: 800 15px var(--baslik); background: var(--kiremit-acik); color: var(--kiremit-koyu); }
.danisman:nth-child(2n) .avatar { background: var(--deniz-acik); color: var(--deniz); }
.danisman b { display: block; font-size: 15px; }
.danisman span { font-size: 13px; color: var(--gri); }
.danisman a { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: #E9F7EF; color: #178a45; }

/* ---------- SSS ---------- */
.sss { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 22px; }
.sss details { border: 1px solid var(--cizgi); border-radius: 14px; background: #fff; padding: 0 18px; transition: border-color .2s; }
.sss details[open] { border-color: var(--lacivert); }
.sss summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 17px 0; font-weight: 700; font-size: 15.5px; }
.sss summary::-webkit-details-marker { display: none; }
.sss summary::after { content: '+'; font: 400 24px/1 var(--govde); color: var(--kiremit); transition: transform .2s; }
.sss details[open] summary::after { transform: rotate(45deg); }
.sss details p { color: var(--gri); font-size: 14.5px; padding-bottom: 6px; }

/* ---------- Alt bilgi ---------- */
.alt { background: var(--lacivert); color: #BAC4D3; padding: 60px 0 28px; font-size: 14.5px; margin-top: 0; }
.alt-izgara { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 36px; padding-bottom: 40px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.alt .logo b { color: #fff; }
.alt .logo small { color: #8C98AD; }
.alt h4 { color: #fff; font-size: 15px; margin-bottom: 14px; letter-spacing: 0; }
.alt ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.alt a:hover { color: #fff; }
.alt-yasal { padding-top: 22px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 30px; font-size: 12.5px; color: #8C98AD; }
.alt-yasal p { margin: 0; max-width: 820px; }

/* ---------- İlan listesi sayfası ---------- */
.liste-bas { background: var(--zemin-2); padding: 26px 0 24px; border-bottom: 1px solid var(--cizgi); }
.kirinti { font-size: 13.5px; color: var(--gri); display: flex; gap: 8px; flex-wrap: wrap; }
.kirinti a:hover { color: var(--lacivert); }
.liste-bas h1 { font-size: clamp(26px, 3vw, 36px); font-weight: 800; margin-top: 8px; }
.liste-duzen { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 28px; padding: 28px 0 80px; align-items: start; }
.suzgec { position: sticky; top: 92px; border: 1px solid var(--cizgi); border-radius: 18px; background: #fff; }
.suzgec-ust { display: flex; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid var(--cizgi); }
.suzgec-ust h2 { font-size: 18px; font-weight: 800; }
.suzgec-ust button { font-size: 13.5px; font-weight: 700; color: var(--kiremit); }
.suz-grup { padding: 16px 18px; border-bottom: 1px solid var(--cizgi); display: grid; gap: 10px; }
.suz-grup:last-of-type { border-bottom: 0; }
.suz-grup > b { font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: var(--gri); }
.suz-grup .segment { display: flex; }
.suz-grup .segment button { flex: 1; }
.kutu-liste { display: grid; gap: 4px; }
.kutu-liste label { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 14.5px; padding: 4px 0; cursor: pointer; }
.kutu-liste label span { display: flex; gap: 10px; align-items: center; }
.kutu-liste input { width: 18px; height: 18px; accent-color: var(--lacivert); margin: 0; }
.kutu-liste em { font-style: normal; font-size: 12.5px; color: var(--gri-acik); font-weight: 600; }
.aralik { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.aralik input { width: 100%; height: 42px; border: 1.5px solid var(--cizgi); border-radius: 10px; padding: 0 10px; font-size: 14.5px; outline: none; }
.aralik input:focus { border-color: var(--lacivert); }
.suzgec-alt { display: none; }
.sonuc-ust { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 18px; flex-wrap: wrap; }
.sonuc-ust .say { font-weight: 600; color: var(--gri); }
.sonuc-ust .say b { color: var(--lacivert); font: 800 19px var(--baslik); }
.sonuc-ust .sag { display: flex; gap: 10px; align-items: center; }
.siralama { height: 42px; border: 1.5px solid var(--cizgi); border-radius: 10px; padding: 0 34px 0 12px; font-weight: 600; font-size: 14px; -webkit-appearance: none; appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2315233B' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center; }
.etiket-satir { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; }
.etiket-satir:empty { display: none; }
.etiket-satir button { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; border-radius: 99px; background: var(--lacivert); color: #fff; font-size: 13px; font-weight: 600; }
.liste-harita .harita { min-height: 640px; border-radius: 18px; border: 1px solid var(--cizgi); }
.filtre-dugme { display: none; }
.demo-not { margin-top: 28px; font-size: 12.5px; color: var(--gri); }

/* ---------- İlan detayı ---------- */
.detay-bas { padding: 22px 0 18px; }
.detay-baslik { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-top: 12px; flex-wrap: wrap; }
.detay-baslik h1 { font-size: clamp(26px, 3vw, 38px); font-weight: 800; max-width: 22ch; }
.detay-baslik .yer { display: flex; gap: 6px; align-items: center; color: var(--gri); margin-top: 8px; font-weight: 600; }
.detay-fiyat { text-align: right; }
.detay-fiyat b { display: block; font: 800 clamp(28px, 3vw, 40px)/1 var(--baslik); letter-spacing: -.03em; }
.detay-fiyat span { font-size: 13.5px; color: var(--gri); }
.detay-aksiyon { display: flex; gap: 8px; margin-top: 12px; justify-content: flex-end; }
.detay-aksiyon button { height: 38px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--cizgi); display: inline-flex; gap: 6px; align-items: center; font-size: 14px; font-weight: 600; }
.detay-aksiyon button[aria-pressed='true'] .ik { fill: var(--kiremit); stroke: var(--kiremit); }
.mozaik { position: relative; display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 220px 220px; gap: 8px; border-radius: 20px; overflow: hidden; }
.mozaik a { position: relative; overflow: hidden; background: var(--zemin-3); }
.mozaik a:first-child { grid-row: span 2; }
.mozaik img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.mozaik a:hover img { transform: scale(1.04); }
.mozaik .tumu { position: absolute; right: 14px; bottom: 14px; height: 38px; padding: 0 14px; border-radius: 10px; background: #fff; display: inline-flex; gap: 6px; align-items: center; font-weight: 700; font-size: 14px; box-shadow: var(--golge); }
.mozaik.az { grid-template-columns: 2fr 1fr; }
.detay-duzen { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 36px; padding: 32px 0 70px; align-items: start; }
.hizli-bilgi { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 30px; }
.hizli-bilgi div { padding: 16px; border-radius: 14px; background: var(--zemin-2); }
.hizli-bilgi .ik { color: var(--kiremit); width: 22px; height: 22px; margin-bottom: 8px; }
.hizli-bilgi b { display: block; font: 800 19px var(--baslik); }
.hizli-bilgi span { font-size: 13px; color: var(--gri); }
.detay-bolum { padding: 26px 0; border-top: 1px solid var(--cizgi); }
.detay-bolum h2 { font-size: 22px; font-weight: 800; margin-bottom: 14px; }
.ozellik-tablo { display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; }
.ozellik-tablo div { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px dashed var(--cizgi); font-size: 15px; }
.ozellik-tablo dt { color: var(--gri); }
.ozellik-tablo dd { margin: 0; font-weight: 700; text-align: right; }
.mini-harita { position: relative; height: 320px; border-radius: 16px; overflow: hidden; border: 1px solid var(--cizgi); }
.mini-harita .harita { min-height: 0; height: 100%; }
.iletisim-kart { position: sticky; top: 96px; border: 1px solid var(--cizgi); border-radius: 22px; padding: 22px; box-shadow: var(--golge); background: #fff; display: grid; gap: 12px; }
.iletisim-kart .danisman { border: 0; padding: 0 0 6px; }
.iletisim-kart .ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.iletisim-kart hr { border: 0; border-top: 1px solid var(--cizgi); margin: 6px 0; width: 100%; }
.iletisim-kart h3 { font-size: 18px; font-weight: 800; }
.yetki { font-size: 12px; color: var(--gri); }

/* Basit ışık kutusu */
.isik { position: fixed; inset: 0; z-index: 90; background: rgba(12, 18, 30, .94); display: none; align-items: center; justify-content: center; padding: 60px 70px; }
.isik.acik { display: flex; }
.isik img { max-height: 100%; max-width: 100%; border-radius: 12px; }
.isik button { position: absolute; width: 48px; height: 48px; border-radius: 50%; background: rgba(255, 255, 255, .12); color: #fff; display: grid; place-items: center; }
.isik .kapat { top: 16px; right: 16px; }
.isik .g { left: 16px; top: 50%; } .isik .i { right: 16px; top: 50%; }
.isik .sira { position: absolute; bottom: 18px; left: 50%; transform: translateX(-50%); color: #fff; font-weight: 600; font-size: 14px; }

/* İletişim sayfası */
.iletisim-duzen { display: grid; grid-template-columns: minmax(0, 1fr) 460px; gap: 32px; padding: 32px 0 70px; align-items: start; }
.iletisim-duzen .harita { min-height: 420px; border-radius: 22px; border: 1px solid var(--cizgi); }

/* ---------- Duyarlı ---------- */
@media (max-width: 1180px) {
  .ilan-izgara { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .konsol-alanlar { grid-template-columns: 1fr 1fr 1fr; }
  .k-alan:nth-child(3) { border-right: 0; }
  .k-alan:nth-child(-n+3) { border-bottom: 1px solid var(--cizgi); }
  .konsol-git { grid-column: span 2; }
  .ana-menu a { padding: 9px 10px; }
  .satici { grid-template-columns: 1fr; }
  .detay-duzen { grid-template-columns: minmax(0, 1fr) 340px; }
}
@media (max-width: 960px) {
  .ana-menu, .serit-sag .gizle-m, .basl-sag .btn { display: none; }
  .menu-dugme { display: grid; }
  .harita-blok { grid-template-columns: 1fr; }
  .harita-liste { display: flex; max-height: none; overflow-x: auto; border-right: 0; border-top: 1px solid var(--cizgi); order: 2; scroll-snap-type: x mandatory; }
  .hl-ust { display: none; }
  .hl-oge { flex: 0 0 260px; border-bottom: 0; border-right: 1px solid var(--cizgi); scroll-snap-align: start; }
  .harita { min-height: 420px; }
  .kategori { grid-template-columns: 1fr 1fr; }
  .ofis, .sss { grid-template-columns: 1fr; }
  .alt-izgara { grid-template-columns: 1fr 1fr; }
  .liste-duzen { grid-template-columns: minmax(0, 1fr); }
  .suzgec { position: fixed; inset: auto 0 0 0; top: auto; z-index: 75; max-height: 86vh; overflow-y: auto; border-radius: 22px 22px 0 0; transform: translateY(105%); transition: transform .3s cubic-bezier(.2, .8, .2, 1); box-shadow: 0 -10px 40px rgba(21, 35, 59, .25); }
  .suzgec.acik { transform: none; }
  .cekim .suzgec:not(.acik) { display: none; }
  .suzgec-alt { display: block; position: sticky; bottom: 0; padding: 12px 18px 18px; background: #fff; border-top: 1px solid var(--cizgi); }
  .filtre-dugme { display: inline-flex; }
  .detay-duzen, .iletisim-duzen { grid-template-columns: minmax(0, 1fr); }
  .iletisim-kart { position: static; }
  .ilan-izgara.uc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  body { padding-bottom: 74px; }
  .serit .kap { height: 36px; font-size: 12.5px; }
  .serit-sol .gizle-m { display: none; }
  .basl .kap { height: 64px; gap: 12px; }
  .logo-isaret { width: 36px; height: 36px; }
  .logo b { font-size: 20px; }
  .logo small { font-size: 10.5px; }
  .arama-hero { padding: 30px 0 36px; }
  .hero-ust { grid-template-columns: 1fr; margin-bottom: 20px; }
  .hero-hizli { display: none; }
  .arama-hero h1 { font-size: 31px; }
  .konsol { border-radius: 18px; }
  .konsol-sekme label span { padding: 12px 14px 13px; font-size: 15px; }
  .konsol-sekme input:checked + span::after { left: 14px; right: 14px; }
  .konsol-alanlar { grid-template-columns: 1fr 1fr; }
  .k-alan { padding: 12px 14px; border-bottom: 1px solid var(--cizgi); }
  .k-alan:nth-child(2n) { border-right: 0; }
  .k-alan:nth-child(3) { border-right: 1px solid var(--cizgi); }
  .k-alan.oda, .k-alan.fiyat { grid-column: 1 / -1; border-right: 0; }
  .k-alan:nth-child(3).oda { border-right: 0; }
  .konsol-git { grid-column: 1 / -1; padding: 10px; }
  .konsol-git .btn { width: 100%; min-height: 54px; }
  .mahalle-ciz { flex-wrap: nowrap; overflow-x: auto; margin: 18px calc(var(--kenar) * -1) 0; padding: 0 var(--kenar) 4px; scrollbar-width: none; }
  .mahalle-ciz a { flex: none; }
  .mahalle-ciz > span { flex: none; }
  .bolum { padding: 48px 0; }
  .ilan-izgara, .ilan-izgara.uc { grid-template-columns: 1fr; gap: 16px; }
  .ilan-izgara.yatay-m { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 calc(var(--kenar) * -1); padding: 4px var(--kenar) 10px; scrollbar-width: none; }
  .ilan-izgara.yatay-m .ik-kart { flex: 0 0 82%; scroll-snap-align: center; }
  .kategori { gap: 10px; }
  .kat-kart { min-height: 120px; padding: 16px; }
  .kat-kart h3 { font-size: 17px; }
  .kat-kart .say { font-size: 32px; }
  .kat-kart svg.cizim { width: 34px; height: 34px; }
  .kat-kart p { display: none; }
  .adimlar { grid-template-columns: 1fr; }
  .satici { border-radius: 20px; padding: 24px 18px; gap: 26px; }
  .mini-form { padding: 18px; }
  .alt-izgara { grid-template-columns: 1fr; gap: 28px; }
  .alt { padding-bottom: 28px; }
  .sekme-cubugu { display: grid; grid-template-columns: repeat(5, 1fr); position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; height: 66px; background: #fff; border-top: 1px solid var(--cizgi); box-shadow: 0 -6px 20px rgba(21, 35, 59, .08); padding-bottom: env(safe-area-inset-bottom); }
  .sekme-cubugu a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; font-size: 11.5px; font-weight: 600; color: var(--gri); }
  .sekme-cubugu a[aria-current='page'] { color: var(--lacivert); }
  .sekme-cubugu a .ik { width: 22px; height: 22px; }
  .sekme-cubugu a.ara { color: #fff; }
  .sekme-cubugu a.ara i { width: 46px; height: 46px; margin-top: -22px; border-radius: 16px; background: var(--kiremit); display: grid; place-items: center; box-shadow: 0 6px 16px -4px rgba(224, 82, 43, .7); }
  .sekme-cubugu a.ara span { color: var(--kiremit); }
  .harita { min-height: 380px; }
  .pin { height: 26px; line-height: 26px; font-size: 12px; padding: 0 8px; }
  .pin-pop { width: 210px; }
  .mozaik { grid-template-columns: 1fr 1fr; grid-template-rows: 240px 110px; border-radius: 16px; margin: 0 calc(var(--kenar) * -1); border-radius: 0; }
  .mozaik a:first-child { grid-column: 1 / -1; grid-row: auto; }
  .mozaik a:nth-child(n+4) { display: none; }
  .mozaik.az { grid-template-columns: 1fr 1fr; }
  .detay-baslik { flex-direction: column; align-items: start; gap: 12px; }
  .detay-fiyat { text-align: left; }
  .detay-aksiyon { justify-content: flex-start; }
  .hizli-bilgi { grid-template-columns: 1fr 1fr; }
  .ozellik-tablo { grid-template-columns: 1fr; }
  .f-ikili { grid-template-columns: 1fr; }
  .isik { padding: 60px 10px; }
  .liste-harita .harita { min-height: 460px; }
  .sonuc-ust .sag { width: 100%; gap: 8px; flex-wrap: wrap; }
  .sonuc-ust .siralama { flex: 1; min-width: 0; }
  .sonuc-ust .segment button { padding: 8px 11px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }

/* Harita etiketleri */
.m-etiket { position: absolute; z-index: 1; transform: translate(-50%, 9px); font: 700 11px/1 var(--govde); letter-spacing: .16em; text-transform: uppercase; color: #8E877A; pointer-events: none; white-space: nowrap; }
.m-etiket.deniz { color: #6E9AAF; letter-spacing: .3em; }
.m-etiket.yol { font-size: 10.5px; letter-spacing: .04em; text-transform: none; font-weight: 600; color: #A39C8F; }
.btn.pasif { opacity: .5; pointer-events: none; }
.cekim .ik-kart { animation: none; }
@media (max-width: 760px) { .m-etiket { font-size: 9.5px; letter-spacing: .1em; } .m-etiket.yol { display: none; } }

/* ======================================================================
   Üretim eklemeleri (sunucu tarafı işaretleme: radyo/etiket, form alanları, erişilebilirlik)
   ====================================================================== */
.ot-mahalle [hidden] { display: none !important; }
.logo-isaret rect { fill: var(--kiremit); }
.logo-img { max-height: 44px; width: auto; }
.alt .logo-img { max-height: 40px; }
.serit a.dil { text-transform: uppercase; font-weight: 700; letter-spacing: .04em; }
.cekmece-ust b { font: 800 20px var(--baslik); }
.cekmece-alt { display: grid; gap: 10px; margin-top: 18px; }
.btn.btn-cizgi { color: var(--lacivert); }
.alt .imza { opacity: .7; }
.alt-yasal p:empty { display: none; }
.bas-sag { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.saat-not { font-size: 14px; color: var(--gri); margin: 0 0 14px; }
.hl-bos { padding: 22px 18px; margin: 0; color: var(--gri); font-size: 14px; }
.ofis-kart .acik-durum.koyu { color: var(--lacivert); margin-bottom: 10px; }
.avatar.foto { object-fit: cover; padding: 0; }
.iletisim-satir small a { color: var(--kiremit); font-weight: 600; }

/* Konsol: radyo sekmeleri ve çipler (JS gerekmez) */
.konsol input[type='radio'], .suzgec input[type='radio'] { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.konsol-sekme label { cursor: pointer; display: block; }
.konsol-sekme label span { display: block; color: var(--gri); transition: color .2s; }
.konsol-sekme label:hover span { color: var(--lacivert); }
.konsol-sekme input:checked + span { color: var(--lacivert); }
.konsol-sekme input:focus-visible + span, .cip:has(input:focus-visible), .segment label:has(input:focus-visible) { outline: 2px solid var(--kiremit); outline-offset: 2px; }
.konsol-alanlar { display: flex; }
.konsol-alanlar > .k-alan { flex: 1 1 190px; }
.konsol-alanlar > .k-alan.oda { flex: 1.5 1 250px; }
.konsol-alanlar > .k-alan.fiyat { flex: 1.1 1 230px; }
.konsol-alanlar > .konsol-git { flex: none; }
label.cip { display: inline-flex; align-items: center; cursor: pointer; position: relative; }
label.cip:has(input:checked) { background: var(--lacivert); border-color: var(--lacivert); color: #fff; }
label.cip span { pointer-events: none; }
.segment label { cursor: pointer; display: block; }
.segment label span { display: block; padding: 8px 14px; border-radius: 9px; font-weight: 700; font-size: 14px; color: var(--gri); transition: background .2s, color .2s; text-align: center; }
.segment input:checked + span { background: #fff; color: var(--lacivert); box-shadow: 0 1px 3px rgba(21, 35, 59, .12); }
.suz-grup .segment label { flex: 1; }
.vurgu-kiremit { color: var(--kiremit); }
.vurgu-sari { color: var(--sari); }

/* Form alanları: çekirdek bileşen (dj-fld) tema görünümünde */
.ot-mahalle .dj-fld { display: grid; gap: 6px; }
.ot-mahalle .dj-fld label { font-size: 13.5px; font-weight: 700; color: var(--lacivert-2); }
.ot-mahalle .dj-fld input:not([type='checkbox']), .ot-mahalle .dj-fld select, .ot-mahalle .dj-fld textarea { width: 100%; height: 48px; padding: 0 14px; border: 1.5px solid var(--cizgi); border-radius: 12px; background: #fff; color: var(--lacivert); font-size: 15.5px; outline: none; transition: border-color .15s, box-shadow .15s; }
.ot-mahalle .dj-fld textarea { height: auto; min-height: 110px; padding: 12px 14px; resize: vertical; }
.ot-mahalle .dj-fld select { -webkit-appearance: none; appearance: none; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2315233B' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center; padding-right: 36px; }
.ot-mahalle .dj-fld input:focus, .ot-mahalle .dj-fld select:focus, .ot-mahalle .dj-fld textarea:focus, .ot-mahalle .f-alan input:focus, .ot-mahalle .f-alan select:focus { border-color: var(--lacivert); box-shadow: 0 0 0 4px color-mix(in srgb, var(--dj-text) 8%, transparent); }
.ot-mahalle .dj-error { color: #B42318; font-size: 13px; font-weight: 600; }
.ot-mahalle .dj-fld:has(.dj-error) input, .ot-mahalle .dj-fld:has(.dj-error) select, .ot-mahalle .dj-fld:has(.dj-error) textarea { border-color: #D92D20; }
.ot-mahalle .dj-check { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; color: var(--gri); }
.ot-mahalle .dj-check input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--lacivert); flex: none; }
.ot-mahalle .dj-check a { color: var(--kiremit); text-decoration: underline; }
.ot-mahalle .dj-alert { padding: 12px 14px; border-radius: 12px; background: var(--zemin-2); font-size: 14px; }
.ot-mahalle .dj-alert--error { background: #FEF3F2; color: #B42318; font-weight: 600; }
.ot-mahalle .hp { position: absolute; left: -9999px; }
.mini-form .f-ikili > *, .talep > *, .iletisim-form > * { min-width: 0; }
.talep, .iletisim-form { display: grid; gap: 14px; }
.talep h3 { font-size: 18px; font-weight: 800; }
.talep-not { margin: -6px 0 0; font-size: 13.5px; color: var(--gri); }
.iletisim-form { align-content: start; }
.mini-form .dj-fld label { font-size: 13px; }
.mini-form .dj-check { font-size: 12.5px; }

/* İlan listesi */
.liste-bas-not { margin: 8px 0 0; color: var(--gri); max-width: 640px; }
.suzgec-ust-sag { display: flex; gap: 14px; align-items: center; }
.suzgec-ust .temizle { font-size: 13.5px; font-weight: 700; color: var(--kiremit); }
.suzgec-ust .kapat { color: var(--lacivert); }
.suzgec .f-alan input, .suzgec .f-alan select { height: 44px; }
.suz-grup > b label { font: inherit; }
.suzgec-alt { display: block; padding: 14px 18px 18px; border-top: 1px solid var(--cizgi); }
.tur-sekme { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 16px; }
.tur-sekme a { padding: 8px 14px; border-radius: 99px; border: 1.5px solid var(--cizgi); font-weight: 700; font-size: 14px; color: var(--gri); }
.tur-sekme a.aktif, .tur-sekme a:hover { border-color: var(--lacivert); color: var(--lacivert); }
.etiket-satir a, .etiket-satir button { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; border-radius: 99px; background: var(--lacivert); color: #fff; font-size: 13px; font-weight: 600; }
.etiket-satir .ik { width: 14px; height: 14px; }
.etiket-satir:not(:has(*:not([hidden]))) { display: none; }
.liste-harita { margin-bottom: 8px; }
.liste-harita .harita { min-height: 640px; border-radius: 18px; border: 1px solid var(--cizgi); }
.sonuc-ust select.siralama { min-width: 170px; }

/* İlan detayı */
.ik-rozetler.statik { position: static; margin-bottom: 10px; }
.detay-fiyat b small { font: 600 16px var(--govde); color: var(--gri); letter-spacing: 0; }
.mozaik a { display: block; }
.ozellik-liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 32px; }
.ozellik-liste li { position: relative; padding-left: 24px; font-size: 15px; }
.ozellik-liste li::before { content: ''; position: absolute; left: 0; top: .5em; width: 12px; height: 7px; border-left: 2px solid var(--kiremit); border-bottom: 2px solid var(--kiremit); transform: rotate(-45deg); }
.yer-satir { display: flex; gap: 8px; align-items: center; }
.detay-bolum .dj-prose { color: var(--lacivert-2); }
.iletisim-kart .ikili .btn { height: 46px; }
.sss details p { white-space: pre-line; }
.iletisim-sol { display: grid; gap: 22px; min-width: 0; }
@media (max-width: 1180px) {
  .konsol-alanlar { flex-wrap: wrap; }
  .konsol-alanlar > .konsol-git { flex: 1 1 100%; }
  .konsol-alanlar > .k-alan { border-bottom: 1px solid var(--cizgi); }
}
@media (max-width: 960px) {
  .suzgec-alt { position: sticky; bottom: 0; background: #fff; }
}
@media (max-width: 760px) {
  .konsol-alanlar > .k-alan, .konsol-alanlar > .k-alan.oda, .konsol-alanlar > .k-alan.fiyat { flex: 1 1 100%; border-right: 0; }
  .ozellik-liste { grid-template-columns: 1fr; }
  .bas-sag { width: 100%; justify-content: space-between; }
}
.pin-pop a.pop-link { display: block; margin: 0; color: inherit; font-size: inherit; }
.pin-pop .pop-ac { margin-top: 6px; color: var(--kiremit); font-weight: 700; font-size: 14px; }
a.pin { text-decoration: none; }
.ana-menu a { white-space: nowrap; }
.ana-menu { min-width: 0; }
.ik-ozellik { min-width: 0; }
.ik-ozellik span { min-width: 0; }
.ik-ozellik span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
.ik-ozellik span:last-child .ik { display: inline-block; vertical-align: -3px; margin-right: 6px; }
@media (max-width: 1280px) { .ana-menu a { padding: 9px 9px; font-size: 14px; } .basl .kap { gap: 18px; } }
.harita-kap { display: contents; }
.mini-harita .harita-kap, .iletisim-sol > .harita-kap { display: block; height: 100%; }
.iletisim-sol > .harita-kap { height: auto; }
.mozaik.tek { grid-template-columns: 1fr; grid-template-rows: 448px; }
.mozaik.tek a:first-child { grid-row: auto; }
@media (max-width: 1380px) { .basl-sag > .btn { display: none; } }
@media (max-width: 760px) { .mozaik.tek { grid-template-rows: 260px; grid-template-columns: 1fr; } }
.ot-mahalle .detay-bolum .dj-prose, .ot-mahalle .detay-bolum .dj-prose p { color: var(--lacivert-2); opacity: 1; }
@media (max-width: 960px) {
  .suzgec:not(.acik) { visibility: hidden; transition: transform .3s cubic-bezier(.2, .8, .2, 1), visibility 0s .3s; }
  .suzgec.acik { visibility: visible; transition: transform .3s cubic-bezier(.2, .8, .2, 1); }
}
@media (max-width: 760px) {
  .sonuc-ust .sag { flex-wrap: nowrap; }
  .sonuc-ust select.siralama { min-width: 0; flex: 1 1 0; }
}
