/* ============================================================================
   ŞEHİR SAYFASI V6 — teslimde olmayan, GERÇEK VERİ için gereken parçalar.
   İspat turunda (CODEX_ISPAT=1) yüklenmez: piksel ölçümü teslimin kendi
   CSS'iyle yapılsın, bizim eklerimiz ölçümü kayırmasın.
   Şartname: docs/sartname/2026-09-08-sehir-v6-giydirme.md
   ========================================================================== */

/* ① Harita: teslimde üçüncü taraf bir OpenStreetMap <iframe>'iydi ve sınırları
      Antalya'ya sabitti (başka ilde yanlış yer gösterirdi). Yerine kendi
      Leaflet haritamız geliyor; kutu, iframe'in kapladığı alanı birebir
      dolduruyor. */
body.sehir-v6 .map-pane .harita-kutu{position:absolute;inset:0;width:100%;height:100%;
  border:0;background:#eef3fb;z-index:0}
body.sehir-v6 .map-pane .map-actions{z-index:2}
body.sehir-v6 .discovery-frame.haritasiz{grid-template-columns:1fr}

/* ② Sayfalama — teslimde yoktu; site sayfa başına 10 kart gösteriyor
      (docs/sartname/2026-09-06-sehir-liste-siniri.md). Bileşen tek sayfalık
      il/ilçede hiç basılmaz. */
body.sehir-v6 .city-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  padding:16px 18px;border-top:1px solid var(--renk-cizgi)}
body.sehir-v6 .city-pager-nav,body.sehir-v6 .city-pager-sayfa{min-height:40px;padding:0 13px;
  display:inline-flex;align-items:center;border:1px solid var(--renk-cizgi);border-radius:11px;
  background:#fff;color:var(--renk-metin);font-size:.85rem;font-weight:600}
body.sehir-v6 .city-pager-nav:hover,body.sehir-v6 .city-pager-sayfa:hover{
  border-color:var(--renk-mavi);color:var(--renk-mavi)}
body.sehir-v6 .city-pager-sayfa[aria-current="page"]{background:var(--renk-mavi);
  border-color:var(--renk-mavi);color:#fff}
body.sehir-v6 [aria-disabled="true"]{opacity:.45}
body.sehir-v6 .city-pager-ara{padding:0 4px;color:var(--renk-soluk)}

/* ③ Filtre tam liste modunda 20'şer açılır (2026-09-06 şartnamesi). */
body.sehir-v6 .results-more{width:calc(100% - 36px);margin:12px 18px 18px;min-height:44px;
  border:1px solid var(--renk-cizgi);border-radius:12px;background:#fff;
  color:var(--renk-mavi);font-weight:700}
body.sehir-v6 .results-more:hover{border-color:var(--renk-mavi);background:#f4f7ff}

/* ④ Mesafe rozeti — "Konumumu kullan" sonrası satıra eklenir. */
body.sehir-v6 .profile-copy small em{font-style:normal;color:var(--renk-mavi);font-weight:700}

/* ⑤ Kaynak künyesi (Ertan, 2026-09-08): kurum · konu · bağlantı. Kurum
      onayı iddiası yoktur, logo/amblem kullanılmaz — yalnız düz metin. */
body.sehir-v6 .provenance-source{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;
  margin:12px 0 14px;font-size:.85rem}
body.sehir-v6 .provenance-source dt{color:var(--renk-soluk);font-weight:600}
body.sehir-v6 .provenance-source dd{margin:0}
body.sehir-v6 .provenance-source a{color:var(--renk-mavi);font-weight:700}

/* ⑥ Footer'daki "yapay zekâya özetlet" şeridi — sitenin her sayfasında var
      (GEO), teslimde yoktu. */
body.sehir-v6 .footer-ai{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.82rem}
body.sehir-v6 .footer-ai strong{font-weight:700}
body.sehir-v6 .footer-ai a{padding:6px 11px;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;font-weight:600}
body.sehir-v6 .footer-ai small{flex-basis:100%;opacity:.8}

/* ⑦ KONTRAST DÜZELTMESİ (ölçülerek, axe-core 390 px) — teslimin CSS'ine
      DOKUNULMAZ: `sehir-v6.css` teslimden otomatik üretiliyor
      (arac/codex-ayir-sehir-v6.py) ve İSPAT turunda birebir o kullanılıyor.
      Düzeltme burada durur; ispat ölçümü teslimin kendi renkleriyle,
      yayınlanan sayfa bizim standardımızla çalışır.

      Kök sebep: 1440'ta bu metinler 18,66 px üstünde olduğu için WCAG'ın
      "büyük metin" eşiğine (3:1) giriyor ve geçiyor; 390'da küçüldükleri
      için eşik 4,5:1 oluyor ve teslimin tonu kalıyor.
        --renk-soluk #687a94 → 4,26:1 (zemin) · 4,03:1 (#f1f6fc)  ✗
                     #5a6b83 → 5,30:1 (zemin) · 5,00:1 (#f1f6fc)  ✓
        .decision-number  #3d63f2 üzerinde #eef2ff → 4,40:1  ✗
                          #3358e6 üzerinde #eef2ff → 5,10:1  ✓ */
body.sehir-v6{--renk-soluk:#5a6b83}
body.sehir-v6 .decision-number,
body.sehir-v6 .decision-index a:hover,
body.sehir-v6 .decision-index a:first-child{color:#3358e6}

/* ---------- HARİTA marka renkleri (pin, popup, küme) — 2026-09-09 ----------
   Bkz. sablon/codex/ic-sayfa.css'teki aynı blok — sebep orada anlatılıyor;
   ayrı bir stylesheet isteği açmamak için bu üç zaten-yüklü dosyaya kopyalandı. */
:root{--yesil:#4E6B2A;--yesil-koyu:#3B5320;--kayisi:#B5561A;--kayisi-koyu:#8A3F0E}
.leaflet-container{height:100%;width:100%;font:400 15px/1.5 system-ui,-apple-system,sans-serif;background:#F3F7EC}
.leaflet-container a{color:var(--yesil-koyu)}
.leaflet-control-attribution{font-size:11px;background:rgba(255,255,255,.85)}
.leaflet-popup-content-wrapper{border-radius:16px;box-shadow:0 18px 40px -12px rgba(16,24,16,.28);padding:4px}
.leaflet-popup-content{margin:14px 16px;min-width:190px}
.dc-pin svg{width:28px;height:36px;display:block;filter:drop-shadow(0 2px 3px rgba(28,42,20,.35));transition:transform .15s ease}
.dc-pin svg .dc-pin__govde{fill:var(--yesil)}
.dc-pin--klinik svg .dc-pin__govde{fill:var(--kayisi)}
.dc-pin svg .dc-pin__ikon{stroke:var(--yesil-koyu)}
.dc-pin--klinik svg .dc-pin__ikon{stroke:var(--kayisi-koyu)}
.dc-pin-secili svg{transform:scale(1.2) translateY(-3px)}
.dc-popup b{display:block;font:600 16px/1.3 system-ui,sans-serif;color:#1c2a14;margin-bottom:2px}
.dc-popup span{display:block;font-size:13px;color:#5a6a52}
.dc-popup .puan{display:inline-flex;align-items:center;gap:5px;margin:6px 0 10px;color:var(--kayisi);font-size:13px;font-weight:600}
.dc-popup .puan small{color:#8a978a;font-weight:400}
.dc-popup .btn{width:100%;justify-content:center}
.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:rgba(78,107,42,.22)!important}
.marker-cluster div{background:var(--yesil)!important;color:#fff!important;font:600 13px/30px system-ui,sans-serif!important}
.marker-cluster-large div,.marker-cluster-medium div{background:var(--yesil-koyu)!important}

/* ---------- Hover ile mesafe/süre önizlemesi — 2026-09-09 EK ----------
   Şartname §E1-E6. Leaflet tooltip'i (.dc-mesafe-etiket) hover rozeti,
   .dc-mesafe-satir popup içindeki kalıcı mesafe + Google Haritalar linki. */
.dc-mesafe-etiket{background:#2563eb!important;border:0!important;color:#fff!important;
  font-weight:600;font-size:12px;padding:5px 11px;border-radius:999px;
  box-shadow:0 8px 18px -6px rgba(37,99,235,.6)}
.dc-mesafe-etiket::before{border-top-color:#2563eb!important}
.dc-mesafe-satir{display:flex;flex-direction:column;gap:4px;margin:8px 0;
  padding:9px 11px;background:#eff4ff;border-radius:10px;font-size:13px}
.dc-mesafe-satir span{font-weight:700;color:#1c2a14}
.dc-mesafe-satir a{color:#2563eb;font-weight:600;text-decoration:none}
.dc-mesafe-satir a:hover{text-decoration:underline}
.dc-mesafe-yukleniyor{display:block;margin:8px 0;color:#8a978a;font-size:12px}

/* İki satırlık süre bloğu — araç / yaya (Ertan EK 3 §E3.2, 2026-09-09). */
.dc-sure-kutu{display:flex;flex-direction:column;gap:2px}
.dc-sure-satir{display:flex;align-items:center;gap:6px;white-space:nowrap}
.dc-sure-satir svg{flex:none;opacity:.9}
.dc-sure-satir b{font-weight:750}
/* Kart rozeti artık iki satır — satır içi değil blok olmalı. */
.dc-mesafe-kart-rozet{display:block;margin-top:5px;color:#1b4fd8;font-weight:600}
.dc-mesafe-kart-link{margin-left:0;margin-top:3px;display:inline-block}
