/* CY Rehber. Bileşen stilleri. Site paletini (--cy-*) kullanır, yoksa
   kendi varsayılanlarına düşer (eklenti tek başına da çalışır).
   Sky ailesi (--cy-sky-*) kart sistemi + site kimliğinin ortak paletidir. */

/* ── Rozet ──────────────────────────────────────────── */

.cy-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 999px;
	background: var(--cy-primary-koyu, #075985);
	color: #fff;
	font-size: 0.74rem;
	font-weight: 650;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

/* ── Keşif ana sayfası: hero + bantlar ──────────────── */

.cy-ana-hero {
	/* Kaan kararı: paletin en koyu MAVİSİ (#075985) → açık mavi (#7DD3FC) */
	background: linear-gradient(150deg, var(--cy-primary-koyu, #075985) 0%, var(--cy-acik-mavi, #7DD3FC) 130%);
	border-radius: var(--cy-radius, 10px);
	padding: 2.2rem 2rem 2rem;
	margin-bottom: 2rem;
	color: #fff;
}

.cy-ana-hero h1 {
	color: #fff;
	margin: 0 0 0.4rem;
}

.cy-ana-hero p {
	color: var(--cy-sky-acik, #E0F2FE);
	margin: 0 0 1.2rem;
	max-width: 44rem;
}

.cy-ana-hero-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.cy-ana-hero-form input[type="search"] { flex: 2.2 1 180px; }
.cy-ana-hero-form select {
	flex: 1 1 150px;
	/* select, en uzun seçeneği kadar yer dayatır ve satırı taşırırdı.
	   min-width:0 daralma izni verir; laptopta form tek satıra oturur. */
	min-width: 0;
}
.cy-ana-hero-form input[type="search"],
.cy-ana-hero-form select {
	border: 0; /* koyu zeminde beyaz kutular kenarsız net */
	background: #fff;
	padding: 0.65rem 0.8rem;
}

.cy-ana-hero-form button {
	/* Görünüm SİTE GENELİ buton stilinden gelir (site.css: koyu mavi #075985,
	   hover ana mavi). "Filtrele" ile birebir aynı. Burada yalnız yerleşim. */
	flex: 0 0 auto;
	white-space: nowrap;
}

.cy-ana-bant { margin-top: 2.3rem; }

.cy-ana-bant > h2 {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
	padding-bottom: 0.35rem;
	border-bottom: 2px solid var(--cy-sky-cizgi, #BAE6FD);
	margin-bottom: 1rem;
}

.cy-bant-tumu {
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	color: var(--cy-primary-koyu, #075985);
	white-space: nowrap;
}

.cy-bant-tumu:hover { text-decoration: underline; }

.cy-sektor-kartlar {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
	gap: 0.8rem;
}

.cy-sektor-kart {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	padding: 0.9rem 1rem;
	border: 1px solid var(--cy-sky-cizgi, #BAE6FD);
	border-radius: var(--cy-radius, 10px);
	background: var(--cy-sky-zemin, #F0F9FF);
	text-decoration: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.cy-sektor-kart:hover {
	border-color: var(--cy-sky, #0EA5E9);
	box-shadow: 0 6px 18px rgba(2, 132, 199, 0.14);
}

.cy-sektor-kart strong { color: var(--cy-primary-koyu, #075985); font-size: 1.02rem; }

.cy-sektor-kart span { color: var(--cy-metin, #334155); font-size: 0.83rem; line-height: 1.45; }

.cy-bolge-kartlar {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 0.8rem;
}

.cy-bolge-kart {
	padding: 0.9rem 1rem;
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
	background: var(--cy-yuzey, #fff);
}

.cy-bolge-kart-ad {
	display: block;
	font-weight: 700;
	font-size: 1.05rem;
	color: var(--cy-primary-koyu, #075985);
	text-decoration: none;
	margin-bottom: 0.55rem;
}

.cy-bolge-kart-ad:hover { text-decoration: underline; }

.cy-bolge-kart-ad small { font-weight: 550; color: var(--cy-soluk, #64748B); margin-left: 0.25rem; }

.cy-bolge-kart-cipler {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.cy-chip-devam { border-style: dashed; }

.cy-ana-yazilar { margin-top: 0; }

.cy-liste-baslik { margin-bottom: 1.1rem; }

/* ── Filtre çubuğu ──────────────────────────────────── */

.cy-filtre {
	display: flex;
	flex-wrap: wrap;
	gap: 0.7rem;
	align-items: end;
	margin-bottom: 1.4rem;
	padding: 0.9rem 1rem;
	background: var(--cy-zemin, #F6F8FA);
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
}

.cy-filtre label {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	font-size: 0.78rem;
	font-weight: 600;
	color: var(--cy-soluk-koyu, #475569);
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.cy-filtre input[type="search"] { min-width: 230px; }
.cy-filtre select { min-width: 170px; }
.cy-filtre button { align-self: end; }

/* ── Firma kartları ─────────────────────────────────── */

.cy-kartlar {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
	gap: 1rem;
}

/* Kart paleti: açık mavi zemin, koyu mavi vurgular (sky ailesi) */
.cy-kart {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	padding: 1.1rem 1.2rem;
	border: 1px solid var(--cy-sky-cizgi, #BAE6FD);
	border-top: 3px solid var(--cy-sky, #0EA5E9); /* mavi kimlik şeridi */
	border-radius: var(--cy-radius, 10px);
	background: linear-gradient(180deg, var(--cy-sky-zemin, #F0F9FF) 0%, #FFFFFF 55%);
	box-shadow: 0 1px 2px rgba(2, 132, 199, 0.08);
	transition: box-shadow 0.15s ease, transform 0.15s ease, border-color 0.15s ease;
}

.cy-kart:hover {
	border-color: #7DD3FC;
	border-top-color: var(--cy-primary-koyu, #075985);
	box-shadow: 0 10px 26px rgba(2, 132, 199, 0.16);
	transform: translateY(-2px);
}

.cy-kart-featured {
	border: 1px solid #7DD3FC;
	border-top: 3px solid var(--cy-primary-koyu, #075985); /* koyu şerit = öne çıkan */
	background: linear-gradient(180deg, var(--cy-sky-acik, #E0F2FE) 0%, #F8FDFF 70%);
}

/* Kimlik başlığı: logo kutusu + büyük firma adı, altta ince ayırıcı */
.cy-kart-bas {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid var(--cy-sky-acik, #E0F2FE);
}

.cy-kart-logo {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	padding: 4px;
	background: #FFFFFF;
	border: 1px solid var(--cy-sky-cizgi, #BAE6FD);
	border-radius: var(--cy-radius-kucuk, 8px);
}

.cy-kart-logo img {
	max-height: 46px;
	max-width: 46px;
	width: auto;
	border-radius: 4px;
	object-fit: contain;
}

.cy-kart-baslik {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2rem;
	min-width: 0; /* uzun adlarda taşmayı engeller (flex çocuğu) */
}

.cy-firma-logo {
	float: right;
	margin: 0 0 0.6rem 1rem;
	padding: 0.5rem 0.7rem;
	background: var(--cy-yuzey, #fff);
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
}

.cy-firma-logo img {
	display: block;
	max-height: 64px;
	width: auto;
	object-fit: contain;
}

@media (max-width: 640px) {
	.cy-firma-logo { float: none; margin: 0 0 0.8rem; display: inline-block; }
}

.cy-kart .cy-badge { align-self: flex-start; }

.cy-kart h2 {
	margin: 0;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.01em;
	overflow-wrap: anywhere; /* çok uzun tek kelimeli adlar kutudan taşmasın */
}

.cy-kart h2 a { text-decoration: none; color: var(--cy-primary-koyu, #075985); }
.cy-kart h2 a:hover,
.cy-kart:hover h2 a { color: var(--cy-sky, #0EA5E9); }

/* Kart sektör satırı: açık mavi DOLGULU çip. Coğrafyadan ayrı ton
   (üst bölge = koyu dolgu, ilçe = beyaz, sektör = açık mavi dolgu). */
.cy-kart-sektor {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	/* Bölge grubundan ayıraç. Başlık altındaki çizgiyle aynı dil */
	margin-top: 0.35rem;
	padding-top: 0.6rem;
	border-top: 1px solid var(--cy-sky-acik, #E0F2FE);
}

.cy-chip-sektor {
	background: var(--cy-sky-acik, #E0F2FE);
	border-color: var(--cy-sky-acik, #E0F2FE);
	color: var(--cy-primary-koyu, #075985);
	font-weight: 600;
}

.cy-chip-sektor:hover {
	background: var(--cy-sky-cizgi, #BAE6FD);
	border-color: var(--cy-sky-cizgi, #BAE6FD);
	color: var(--cy-primary-koyu, #075985);
}

.cy-kart-bolge {
	display: flex;
	flex-wrap: wrap;
	gap: 0.3rem;
	align-items: center;
	margin: 0.1rem 0 0;
	font-size: 0.8rem;
	color: var(--cy-soluk, #64748B);
}

/* Üst bölge (yaka/il) linkleri: ilçe çipinin DOLGULU koyu mavi kardeşi.
   aynı hap formu, ters renk şeması (hiyerarşi tek bakışta ayrışır). */
.cy-kart-il { display: contents; }
.cy-kart-il a {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	line-height: 1.3;
	padding: 0.2rem 0.75rem;
	border: 1px solid var(--cy-primary-koyu, #075985);
	border-radius: 999px;
	background: var(--cy-primary-koyu, #075985);
	font-size: 0.75rem;
	font-weight: 650;
	color: #fff;
	text-decoration: none;
	transition: all 0.15s ease;
}
.cy-kart-il a:hover {
	background: var(--cy-primary, #0284C7);
	border-color: var(--cy-primary, #0284C7);
	color: #fff;
}

.cy-chip {
	/* 24px+ dokunma hedefi (a11y target-size): kalıtımdaki line-height
	   ezilmelerine karşı kesin kutu. İnline-flex + min-height */
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	line-height: 1.3;
	padding: 0.2rem 0.75rem;
	border: 1px solid var(--cy-sky-cizgi, #BAE6FD);
	border-radius: 999px;
	background: #fff;
	font-size: 0.75rem;
	text-decoration: none;
	color: var(--cy-primary-koyu, #075985);
	transition: all 0.15s ease;
}

.cy-chip:hover {
	border-color: var(--cy-sky, #0EA5E9);
	background: var(--cy-sky-acik, #E0F2FE);
	color: var(--cy-primary-koyu, #075985);
}

/* "+N ilçe" açılır çipi. JS'siz (details/summary) */
.cy-kart-devam { display: inline; }

.cy-kart-devam summary {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	line-height: 1.3;
	list-style: none;
	cursor: pointer;
	padding: 0.2rem 0.75rem;
	border: 1px dashed var(--cy-sky, #0EA5E9);
	border-radius: 999px;
	font-size: 0.75rem;
	/* metin koyu: #0EA5E9 beyaz üstünde kontrastı geçemez (kenar dekoratif, kalabilir) */
	color: var(--cy-primary-koyu, #075985);
	user-select: none;
}

.cy-kart-devam summary::-webkit-details-marker { display: none; }

.cy-kart-devam .cy-kapa { display: none; }
.cy-kart-devam[open] .cy-ac { display: none; }
.cy-kart-devam[open] .cy-kapa { display: inline; }

.cy-kart-devam-liste {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-top: 0.4rem;
}

.cy-kart-ozet { margin: 0.1rem 0 0.25rem; font-size: 0.9rem; color: var(--cy-metin, #334155); }

/* ── Tekil firma bilgi kartı ────────────────────────── */

.cy-firma-bilgi {
	margin-top: 1.8rem;
	padding: 1.4rem 1.5rem;
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
	background: var(--cy-zemin, #F6F8FA);
}

.cy-firma-bilgi h2 {
	margin: 0.5rem 0 1rem;
	font-weight: 650; /* bileşen başlığı */
	font-size: 1.1rem;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid var(--cy-cizgi, #E2E8F0);
}

.cy-firma-bilgi dl {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 0.55rem 1.5rem;
	margin: 0;
}

.cy-firma-bilgi dt {
	font-size: 0.78rem;
	font-weight: 650;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--cy-soluk-koyu, #475569);
	padding-top: 0.1rem;
}

.cy-firma-bilgi dd { margin: 0; overflow-wrap: anywhere; }

/* Bilgi kartında çip grupları (Sektör satırı + Bölge bileşeni) */
.cy-cip-grubu {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

/* Sektör/bölge çipleri kart bölümündeki ortak kurallardan gelir
   (.cy-chip-sektor, .cy-kart-bolge). Burada tekrar TANIMLANMAZ. */

.cy-harita { margin-top: 1.3rem; }

.cy-harita iframe {
	width: 100%;
	height: 320px;
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
}

/* ── İl sayfası: ilçe çipleri ───────────────────────── */
/* Çip görünümü ortak .cy-chip + .cy-bolge-kart-cipler'den gelir (hub standardı). */

.cy-ilceler { margin-top: 1.4rem; }

.cy-ilceler h2 { font-size: 1.05rem; font-weight: 650; margin: 0 0 0.7rem; }

/* ── İlgili Yazılar ─────────────────────────────────── */
/* Görünüm site.css'teki ortak .cy-ilgili-yazilar bloğundan gelir
   (yazı altı + arşiv + ana sayfa bandı TEK tasarım). */

/* ── Boş durum + sayfalama ──────────────────────────── */

.cy-bos-bolge {
	padding: 0.8rem 1rem;
	border: 1px dashed var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
	color: var(--cy-soluk, #64748B);
	background: var(--cy-yuzey, #fff);
}

/* Alan-nötr arşiv şablonu sarmalı. YALNIZ GP-dışı temalarda (eklentinin kendi
   templates/archive.php'i). GP'de tema konteyneri kullanılır, bu sınıf basılmaz. */
.cy-arsiv-ana {
	max-width: var(--cy-genislik, 1080px);
	margin: 0 auto;
	padding: 2rem 1rem;
}

/* Arşiv içerik kutusu. Hub sayfalarının beyaz kutusuyla aynı standart */
.cy-arsiv-kutu {
	margin-top: 1.4rem;
	padding: 1.6rem 1.8rem;
	background: var(--cy-yuzey, #fff);
	border: 1px solid var(--cy-cizgi, #E2E8F0);
	border-radius: var(--cy-radius, 10px);
	box-shadow: var(--cy-golge, 0 1px 2px rgba(15, 23, 42, 0.06));
}

.cy-arsiv-kutu .cy-kartlar-arsiv { margin-top: 0; }

/* /firma/ arşiv tanıtımı (thin-page önlemi) */
.cy-arsiv-tanitim {
	color: var(--cy-metin, #334155);
	max-width: 46rem;
	margin: 0 0 1.3rem;
}

/* H1 kutusu içindeyken alt boşluk kutu padding'inden gelir */
.page-header .cy-arsiv-tanitim { margin-bottom: 0; }

/* Arşiv (tema) ve shortcode sayfalaması aynı görünümü paylaşır (sky ailesi) */
.cy-kartlar-arsiv { margin-top: 1.2rem; }

.paging-navigation .nav-links,
.cy-sayfalama { display: flex; gap: 0.4rem; }

.cy-sayfalama { margin-top: 1.6rem; }

.paging-navigation .page-numbers,
.cy-sayfalama .page-numbers {
	padding: 0.35rem 0.75rem;
	border: 1px solid var(--cy-sky-cizgi, #BAE6FD);
	border-radius: var(--cy-radius-kucuk, 8px);
	text-decoration: none;
	background: #fff;
}

.paging-navigation .page-numbers.current,
.cy-sayfalama .page-numbers.current {
	/* beyaz metinli zemin koyu olmalı (4.5:1) */
	background: var(--cy-primary-koyu, #075985);
	border-color: var(--cy-primary-koyu, #075985);
	color: #fff;
}

/* ── Mobil ──────────────────────────────────────────── */

@media (max-width: 640px) {
	.cy-filtre { align-items: stretch; }
	.cy-filtre label, .cy-filtre input[type="search"], .cy-filtre select, .cy-filtre button { width: 100%; }
	.cy-firma-bilgi dl { grid-template-columns: 1fr; gap: 0.15rem 0; }
	.cy-firma-bilgi dd { margin-bottom: 0.55rem; }
}
