/**
 * CEA Butik - ana biçem dosyası
 *
 * Tasarım kuralları
 * - Gölge kullanılmaz; her ayrım 1px "saç teli" çizgiyle yapılır.
 * - Köşe yarıçapı her yerde 2px.
 * - Başlıklarda geniş boy farkı ve -0.02em harf aralığı (dergi hissi).
 * - Uzak sunucudan yazı tipi ya da varlık çekilmez.
 *
 * İçindekiler
 * 1.  Değişkenler
 * 2.  Temel tipografi
 * 3.  Yerleşim
 * 4.  Üst duyuru çubuğu
 * 5.  Site üst bilgisi ve kimlik
 * 6.  Gezinme ve koleksiyon şeridi
 * 7.  Manşet bloğu
 * 8.  Bölüm ve sayfa başlıkları
 * 9.  Yazı akışı ve tek yazı
 * 10. Blok içerik biçimleri
 * 11. Düğmeler ve metin bağlantıları
 * 12. Kombin (lookbook) şeridi
 * 13. Sayfalama ve yazı gezinmesi
 * 14. Kenar çubuğu ve bileşenler
 * 15. Arama formu
 * 16. Yorumlar
 * 17. 404 ve içerik yok
 * 18. Alt bilgi
 * 19. Duyarlılık ve erişilebilirlik
 * 19a. Duyarlılık tabanı (dokunma, form, taşma)
 * 20. Yazdırma
 *
 * KIRILMA NOKTALARI
 * arac/duyarlilik-denetle.php bu listeyi CSS'teki @media kurallarıyla BİREBİR
 * karşılaştırır: listede olmayan bir kırılma noktası ya da kullanılmayan bir
 * liste satırı hata üretir. Böylece kırılma noktası kümesi sessizce dağılmaz.
 *   min-width: 641px   — yazı akışı ve hızlı bakış iki sütun olur
 *   min-width: 761px   — ürün ızgarası çok kolona geçer
 *   max-width: 960px   — tablet ve altı: menü ve filtre katlanır
 *   min-width: 961px   — masaüstü: kenar çubuğu, ürün sayfası ve filtre paneli yan sütuna geçer
 *   min-width: 1101px  — çok geniş masaüstü: tek kolon düzeninde editoryal ızgara
 */

/* ==========================================================================
   1. Değişkenler
   ========================================================================== */

:root {
	/*
	 * --cea-ana metin rengi, çizgi rengi ve üzerinde beyaz metin bulunan
	 * zemin (düğme, rozet, üst çubuk, alt bilgi) olarak kullanılır. Bu yüzden
	 * Özelleştirici'de açık bir ton seçilirse functions.php içindeki
	 * cea_butik_okunur_ton() bu değişkeni 7:1 eşiğine kadar koyulaştırır;
	 * alt bilgideki rgba(255,255,255,0.86) metin de böylece 4,5:1'i geçer.
	 * --cea-ana-dolgu HAM Özelleştirici değeridir. Yalnızca metin taşımayan
	 * süsleme için ayrılmıştır; temanın kendi kurallarında ve alt temalarda
	 * metin rengi ya da metin taşıyan zemin olarak KULLANILMAZ. Ham değer
	 * başka hiçbir değişkene yazılmadığı için okunmaz kombinasyon üretemez.
	 */
	--cea-ana: #18181b;
	--cea-ana-dolgu: #18181b;
	--cea-baslik: #09090b;
	--cea-govde: #4a4d55;
	/*
	 * --cea-vurgu odak halkası, rozet/düğme zemini (üzerinde beyaz metin) ve
	 * durum kenarlığı olarak kullanılır; --cea-vurgu-metin bağlantı metnidir.
	 * Varsayılan #be185d beyaz zeminde 6,0:1 verir, ikisi de aynı değerdir.
	 * Özelleştirici'de açık bir ton seçilirse functions.php içindeki
	 * cea_butik_okunur_ton() İKİSİNİ de 4,5:1 eşiğine koyultur; ham değer
	 * yalnızca --cea-vurgu-dolgu değişkenine yazılır ve orada metin taşımayan
	 * süsleme için ayrılmış kalır.
	 */
	--cea-vurgu: #be185d;
	--cea-vurgu-metin: #be185d;
	--cea-vurgu-dolgu: #be185d;
	--cea-vurgu-acik: #fbe9f1;
	--cea-kagit: #fafafa;
	--cea-kart: #ffffff;
	--cea-cizgi: #e4e4e7;
	/*
	 * --cea-tukendi devre dışı düğmenin ZEMİN rengidir; üzerine --cea-ana ile
	 * koyu metin yazılır (6,91:1). Metin rengi olarak kullanılmaz.
	 * --cea-tukendi-isaret tükenmiş durumun ÇİZGİ rengidir (kesikli çerçeve,
	 * üstü çizili). Durum işareti grafik öge olduğu için eşiği 3:1'dir;
	 * #71717a beyaz zeminde 4,83:1 verir. Eski #a1a1aa yalnızca 2,56:1
	 * veriyordu ve az gören kullanıcı tükenmiş bedeni ayırt edemiyordu.
	 */
	--cea-tukendi: #a1a1aa;
	--cea-tukendi-isaret: #71717a;

	--cea-font-baslik: "Playfair Display", Georgia, "Times New Roman", serif;
	--cea-font-govde: Inter, "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
	--cea-font-mono: "Cascadia Mono", Consolas, "SFMono-Regular", Menlo, monospace;

	--cea-kap: 1360px;
	--cea-olcu: 760px;
	--cea-bosluk: 1.75rem;
	--cea-radyus: 2px;
	--cea-gecis: 180ms ease;
	--cea-dokunma: 44px;
	--cea-urun-kolon: 3;
	--cea-kunye-aralik: 0.14em;
}

/* ==========================================================================
   2. Temel tipografi
   ========================================================================== */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background-color: var(--cea-kagit);
	color: var(--cea-govde);
	font-family: var(--cea-font-govde);
	font-size: 1rem;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
	overflow-wrap: break-word;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 0.5em;
	color: var(--cea-baslik);
	font-family: var(--cea-font-baslik);
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.12;
	text-wrap: balance;
}

h1 {
	font-size: clamp(2.5rem, 1.6rem + 3.6vw, 5rem);
}

h2 {
	font-size: clamp(2rem, 1.4rem + 2.2vw, 3.25rem);
}

h3 {
	font-size: clamp(1.4375rem, 1.2rem + 1vw, 2rem);
}

h4 {
	font-family: var(--cea-font-govde);
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: var(--cea-kunye-aralik);
	line-height: 1.5;
	text-transform: uppercase;
}

h5,
h6 {
	font-family: var(--cea-font-govde);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.06em;
}

p,
ul,
ol,
dl,
figure,
pre,
blockquote {
	margin: 0 0 var(--cea-bosluk);
}

a {
	color: var(--cea-ana);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
	transition: color var(--cea-gecis);
}

a:hover,
a:focus {
	color: var(--cea-vurgu-metin);
}

:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	border-radius: var(--cea-radyus);
	outline: 2px solid var(--cea-vurgu);
	outline-offset: 3px;
}

img,
svg,
video,
iframe,
embed,
object {
	max-width: 100%;
	height: auto;
}

img {
	display: block;
	border-radius: var(--cea-radyus);
}

/* Metin içine gömülen simgeler satır akışında kalır. */
img.emoji,
img.wp-smiley {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin: 0 0.07em;
	border-radius: 0;
	vertical-align: -0.1em;
}

hr {
	height: 1px;
	margin: 4rem 0;
	border: 0;
	background-color: var(--cea-cizgi);
}

code,
kbd,
pre,
samp {
	font-family: var(--cea-font-mono);
	font-size: 0.875em;
}

pre {
	overflow-x: auto;
	padding: 1rem 1.15rem;
	border: 1px solid var(--cea-cizgi);
	border-radius: var(--cea-radyus);
	background-color: var(--cea-kart);
}

blockquote {
	padding-block: 2rem;
	border-top: 2px solid var(--cea-ana);
	border-bottom: 1px solid var(--cea-ana);
	color: var(--cea-baslik);
	font-family: var(--cea-font-baslik);
	font-size: clamp(1.375rem, 1.1rem + 1vw, 1.875rem);
	font-style: italic;
	line-height: 1.3;
}

blockquote p:last-child {
	margin-bottom: 0;
}

blockquote cite {
	display: block;
	margin-top: 1rem;
	color: var(--cea-govde);
	font-family: var(--cea-font-govde);
	font-size: 0.8125rem;
	font-style: normal;
	letter-spacing: var(--cea-kunye-aralik);
	text-transform: uppercase;
}

/*
 * Geniş içerik kendi kabında kayar; sayfa gövdesi asla yatay kaymaz. overflow
 * yalnızca SARMALAYICIDA durur: tabloya display:block verilmez, böylece
 * satır/kolon semantiği ve <th> başlık eşleşmesi erişilebilirlik ağacında
 * korunur.
 */
.tablo-kap,
.entry-content > figure.wp-block-table,
.entry-content > .wp-block-table {
	overflow-x: auto;
}

/*
 * navigation.js gerçekten kayan kaplara tabindex="0" ekler; kaydırma çubuğu
 * gizlenmez, böylece klavye kullanıcısı da sağdaki kolonlara ulaşır.
 */
.kayan-kap {
	scrollbar-width: thin;
}

table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.875rem;
}

caption {
	margin-bottom: 0.75rem;
	color: var(--cea-govde);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
	text-align: start;
}

th,
td {
	padding: 0.7rem 0.9rem;
	border-bottom: 1px solid var(--cea-cizgi);
	text-align: start;
	vertical-align: top;
}

thead th {
	border-bottom: 2px solid var(--cea-ana);
	color: var(--cea-baslik);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: var(--cea-kunye-aralik);
	text-transform: uppercase;
	white-space: nowrap;
}

/* ==========================================================================
   3. Yerleşim
   ========================================================================== */

.site {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
}

.kap {
	width: 100%;
	max-width: var(--cea-kap);
	margin-inline: auto;
	padding-inline: 1.25rem;
}

.site-govde {
	flex: 1 0 auto;
}

.site-govde__kap {
	padding-block: 2.5rem 5rem;
}

.duzen--kenar-cubuklu .site-govde__kap {
	display: grid;
	gap: 3.5rem;
}

.icerik-alani {
	min-width: 0;
}

/* Okuma ölçüsü: gövde metni dar akar, görsel blokları geniş kalır. */
.girdi--tek .girdi__ust--tek,
.girdi--tek .girdi__icerik,
.girdi--sayfa .girdi__icerik,
.girdi--tek .etiket-serit,
.yorum-alani {
	max-width: var(--cea-olcu);
	margin-inline: auto;
}

.girdi--tek .girdi__icerik > .alignwide,
.girdi--sayfa .girdi__icerik > .alignwide {
	max-width: min(1320px, 100%);
	margin-inline: auto;
}

/* ==========================================================================
   4. Üst duyuru çubuğu
   ========================================================================== */

.ust-cubuk {
	background-color: var(--cea-ana);
	color: #ffffff;
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
}

.ust-cubuk__kap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 1.5rem;
	padding-block: 0.55rem;
}

.kunye-satiri {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 1.25rem;
}

.kunye-satiri__duyuru {
	margin: 0;
	text-transform: uppercase;
}

.kunye-satiri__iletisim {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1rem;
}

.kunye-satiri__oge,
.hesap-gezinme__baglanti {
	display: inline-flex;
	align-items: center;
	min-height: var(--cea-dokunma);
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
}

.kunye-satiri__oge:hover,
.kunye-satiri__oge:focus,
.hesap-gezinme__baglanti:hover,
.hesap-gezinme__baglanti:focus {
	color: #ffffff;
	text-decoration: underline;
}

.hesap-gezinme__liste {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.25rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* ==========================================================================
   5. Site üst bilgisi ve kimlik
   ========================================================================== */

.site-ust-bilgi {
	border-bottom: 1px solid var(--cea-cizgi);
	background-color: var(--cea-kart);
}

.site-ust-bilgi__kap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
	padding-block: 1.5rem;
}

.site-kimlik {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 0.2rem;
}

.custom-logo-link {
	display: inline-block;
	max-width: 280px;
}

.custom-logo {
	width: auto;
	max-height: 56px;
}

.kimlik--logolu .site-kimlik__baslik {
	font-size: 1.125rem;
}

.site-kimlik__baslik {
	margin: 0;
	color: var(--cea-baslik);
	font-family: var(--cea-font-baslik);
	font-size: clamp(1.5rem, 1.2rem + 1vw, 2.125rem);
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.1;
}

.site-kimlik__baslik a {
	color: inherit;
	text-decoration: none;
}

.site-kimlik__baslik a:hover,
.site-kimlik__baslik a:focus {
	color: var(--cea-vurgu-metin);
}

.site-kimlik__slogan {
	margin: 0;
	color: var(--cea-govde);
	font-size: 0.75rem;
	letter-spacing: var(--cea-kunye-aralik);
	text-transform: uppercase;
}

.ust-bilgi-eylemler {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.25rem;
}

.ust-bilgi-arama {
	min-width: 0;
	flex: 1 1 220px;
}

.sepet-baglanti {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: var(--cea-dokunma);
	padding-inline: 0.35rem;
	color: var(--cea-ana);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: var(--cea-kunye-aralik);
	text-decoration: none;
	text-transform: uppercase;
	white-space: nowrap;
}

.sepet-baglanti:hover,
.sepet-baglanti:focus {
	color: var(--cea-vurgu-metin);
}

.sepet-baglanti__sayi {
	display: inline-flex;
	min-width: 24px;
	align-items: center;
	justify-content: center;
	padding: 0 0.35rem;
	border-radius: var(--cea-radyus);
	background-color: var(--cea-vurgu);
	color: #ffffff;
	font-size: 0.75rem;
	line-height: 22px;
}

/* ==========================================================================
   6. Gezinme ve koleksiyon şeridi
   ========================================================================== */

.site-ust-bilgi__gezinme {
	border-top: 1px solid var(--cea-cizgi);
	background-color: var(--cea-kart);
}

.ana-gezinme {
	position: relative;
}

/*
 * Yatay dolgu 0 olduğu için genişliği yalnızca içerik (22 piksellik çizgi
 * simgesi + "MENÜ" metni) belirliyordu; metin gizlendiğinde hedef 22 piksele
 * düşüyordu. `min-width` hedefi her durumda 44 piksele sabitler.
 */
.menu-anahtari {
	display: none;
	align-items: center;
	gap: 0.6rem;
	min-height: var(--cea-dokunma);
	min-width: var(--cea-dokunma);
	padding: 0.5rem 0;
	border: 0;
	background: none;
	color: var(--cea-ana);
	cursor: pointer;
	font-family: var(--cea-font-govde);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: var(--cea-kunye-aralik);
	text-transform: uppercase;
}

.menu-anahtari__ikon,
.menu-anahtari__ikon::before,
.menu-anahtari__ikon::after {
	display: block;
	width: 22px;
	height: 1px;
	background-color: currentColor;
	content: "";
}

.menu-anahtari__ikon {
	position: relative;
}

.menu-anahtari__ikon::before {
	position: absolute;
	top: -6px;
}

.menu-anahtari__ikon::after {
	position: absolute;
	top: 6px;
}

.menu {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ana-menu > .menu-ogesi {
	position: relative;
}

.menu-baglanti {
	display: flex;
	min-height: var(--cea-dokunma);
	flex-direction: column;
	justify-content: center;
	padding: 0.55rem 1rem;
	color: var(--cea-ana);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: var(--cea-kunye-aralik);
	text-decoration: none;
	text-transform: uppercase;
}

.ana-menu > .menu-ogesi:first-child > .menu-baglanti {
	padding-inline-start: 0;
}

.menu-baglanti:hover,
.menu-baglanti:focus {
	color: var(--cea-vurgu-metin);
}

.menu-baglanti__kunye {
	color: var(--cea-govde);
	font-size: 0.6875rem;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: none;
}

.ana-menu > .current-menu-item > .menu-baglanti,
.ana-menu > .current_page_item > .menu-baglanti,
.ana-menu > .current-menu-ancestor > .menu-baglanti {
	color: var(--cea-vurgu-metin);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.35em;
}

/*
 * Ok simgesi 7 pikselde kalır ama tıklanabilir alan 44x44 pikseldir; readme'de
 * ilan edilen dokunma hedefi böylece alt menü düğmesinde de tutar.
 */
.alt-menu-anahtari {
	display: inline-flex;
	min-width: var(--cea-dokunma);
	min-height: var(--cea-dokunma);
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	background: none;
	color: var(--cea-ana);
	cursor: pointer;
}

.alt-menu-anahtari__ikon {
	display: block;
	width: 7px;
	height: 7px;
	border-right: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--cea-gecis);
}

.alt-menu-anahtari[aria-expanded="true"] .alt-menu-anahtari__ikon {
	transform: rotate(-135deg);
}

.alt-menu {
	display: none;
	min-width: 240px;
	margin: 0;
	padding: 0.35rem 0;
	border: 1px solid var(--cea-cizgi);
	background-color: var(--cea-kart);
	list-style: none;
}

.alt-menu .menu-baglanti {
	min-height: var(--cea-dokunma);
	padding: 0.5rem 1rem;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
}

.menu--yedek {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.menu--yedek li a {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	padding-inline: 1rem;
	font-size: 0.8125rem;
	letter-spacing: var(--cea-kunye-aralik);
	text-decoration: none;
	text-transform: uppercase;
}

.koleksiyon-serit {
	border-top: 1px solid var(--cea-cizgi);
	background-color: var(--cea-kagit);
}

.koleksiyon-menu {
	max-width: var(--cea-kap);
	margin-inline: auto;
	padding-inline: 1.25rem;
	overflow-x: auto;
	flex-wrap: nowrap;
	scrollbar-width: thin;
}

.koleksiyon-menu .menu-baglanti {
	min-height: var(--cea-dokunma);
	padding: 0.4rem 1rem 0.4rem 0;
	color: var(--cea-govde);
	font-size: 0.75rem;
	letter-spacing: 0.1em;
	white-space: nowrap;
}

.koleksiyon-menu .menu-ogesi + .menu-ogesi .menu-baglanti {
	padding-inline-start: 1rem;
}

.koleksiyon-menu .menu-baglanti:hover,
.koleksiyon-menu .menu-baglanti:focus {
	color: var(--cea-vurgu-metin);
}

/* ==========================================================================
   7. Manşet bloğu
   ========================================================================== */

.manset {
	border-bottom: 1px solid var(--cea-cizgi);
	background-color: var(--cea-kart);
}

.manset__gorsel {
	margin: 0;
}

.manset__resim {
	width: 100%;
	max-height: 76vh;
	border-radius: 0;
	object-fit: cover;
}

.manset__yazi {
	padding-block: 2.5rem 3rem;
}

.manset__kap {
	display: flex;
	max-width: min(var(--cea-kap), 100%);
	flex-direction: column;
	gap: 0.75rem;
}

.manset--sol .manset__kap {
	align-items: flex-start;
	text-align: start;
}

.manset--orta .manset__kap {
	align-items: center;
	text-align: center;
}

.manset--sag .manset__kap {
	align-items: flex-end;
	text-align: end;
}

.manset__kunye {
	margin: 0;
	color: var(--cea-vurgu-metin);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.manset__baslik {
	max-width: 20ch;
	margin: 0;
	font-size: clamp(2.5rem, 1.5rem + 4.5vw, 5.5rem);
}

.manset--orta .manset__baslik {
	max-width: 26ch;
}

.manset__metin {
	max-width: 52ch;
	margin: 0;
	font-size: 1.0625rem;
}

.manset__eylem {
	margin: 0.5rem 0 0;
}

/* ==========================================================================
   8. Bölüm ve sayfa başlıkları
   ========================================================================== */

.bolum-basligi,
.sayfa-basligi {
	margin-bottom: 2.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--cea-cizgi);
}

.bolum-basligi__kunye,
.sayfa-basligi__kunye,
.icerik-yok__kunye,
.lookbook__kunye {
	margin: 0 0 0.5rem;
	color: var(--cea-vurgu-metin);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.bolum-basligi__ana,
.sayfa-basligi__ana {
	margin: 0;
}

.sayfa-basligi__ozet,
.sayfa-basligi__aciklama {
	max-width: 60ch;
	margin: 1rem 0 0;
	font-size: 1.0625rem;
}

.sayfa-basligi__aciklama p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   9. Yazı akışı ve tek yazı
   ========================================================================== */

.yazi-akisi {
	display: grid;
	gap: 3.5rem 2.5rem;
}

.girdi--kart {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 1.25rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid var(--cea-cizgi);
}

.girdi--kart:last-child {
	border-bottom: 0;
}

.gorsel-blok {
	margin: 0;
}

.gorsel-blok__baglanti {
	display: block;
}

.gorsel-blok__resim {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.gorsel-blok--tek {
	margin-block: 2.5rem 3rem;
}

.gorsel-blok--tek .gorsel-blok__resim {
	aspect-ratio: 16 / 8;
}

.gorsel-blok__altyazi {
	max-width: var(--cea-olcu);
	margin: 0.75rem auto 0;
	color: var(--cea-govde);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
}

.girdi__govde {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 0.75rem;
}

.girdi__ustlik {
	margin: 0 0 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.girdi__ustlik a {
	color: var(--cea-vurgu-metin);
	text-decoration: none;
}

.girdi__ustlik a:hover,
.girdi__ustlik a:focus {
	text-decoration: underline;
}

.girdi__baslik {
	margin: 0;
}

.girdi--kart .girdi__baslik {
	font-size: clamp(1.375rem, 1.2rem + 0.8vw, 1.75rem);
}

.girdi__baslik-baglanti {
	color: inherit;
	text-decoration: none;
}

.girdi__baslik-baglanti:hover,
.girdi__baslik-baglanti:focus {
	color: var(--cea-vurgu-metin);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.girdi__giris {
	margin: 1.25rem 0 0;
	color: var(--cea-baslik);
	font-size: 1.1875rem;
	line-height: 1.6;
}

.kunye {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1.25rem;
	margin-top: 1rem;
	color: var(--cea-govde);
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.kunye__oge + .kunye__oge {
	position: relative;
}

.kunye a {
	color: inherit;
}

.kunye__oge--kategori a {
	text-decoration: none;
}

.kunye__oge--kategori a:hover,
.kunye__oge--kategori a:focus {
	text-decoration: underline;
}

.girdi__ozet p:last-child,
.girdi__icerik > p:last-child {
	margin-bottom: 0;
}

.girdi__devam {
	margin: 0.25rem 0 0;
}

.girdi__alt {
	margin-top: 1.5rem;
	font-size: 0.8125rem;
}

.duzenle-baglanti a {
	color: var(--cea-govde);
}

.etiket-serit {
	margin-top: 3rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--cea-cizgi);
}

.etiket-serit__baslik {
	margin: 0 0 0.75rem;
	font-family: var(--cea-font-govde);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.etiket-serit__liste {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.etiket-serit__liste a {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	padding: 0.25rem 0.75rem;
	border: 1px solid var(--cea-cizgi);
	border-radius: var(--cea-radyus);
	color: var(--cea-govde);
	font-size: 0.8125rem;
	text-decoration: none;
}

.etiket-serit__liste a:hover,
.etiket-serit__liste a:focus {
	border-color: var(--cea-ana);
	color: var(--cea-baslik);
}

/* ==========================================================================
   10. Blok içerik biçimleri
   ========================================================================== */

.entry-content > * {
	margin-block: 0 var(--cea-bosluk);
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
	margin-top: 2.5rem;
}

.entry-content figure {
	margin-inline: 0;
}

.entry-content ul,
.entry-content ol {
	padding-inline-start: 1.35rem;
}

.entry-content li + li {
	margin-top: 0.4rem;
}

.entry-content :where(img) {
	border-radius: var(--cea-radyus);
}

.entry-content .wp-block-pullquote {
	padding-block: 2.5rem;
	border-top: 2px solid var(--cea-ana);
	border-bottom: 1px solid var(--cea-ana);
	text-align: start;
}

.entry-content .wp-block-pullquote blockquote {
	padding: 0;
	border: 0;
}

.sayfa-baglantilari {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-top: 2rem;
	padding-top: 1rem;
	border-top: 1px solid var(--cea-cizgi);
	font-size: 0.8125rem;
}

.sayfa-baglantilari__etiket {
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sayfa-baglantilari__oge {
	display: inline-flex;
	min-width: var(--cea-dokunma);
	min-height: var(--cea-dokunma);
	align-items: center;
	justify-content: center;
	border: 1px solid var(--cea-cizgi);
	border-radius: var(--cea-radyus);
}

/* ==========================================================================
   11. Düğmeler ve metin bağlantıları
   ========================================================================== */

.dugme,
button,
input[type="submit"],
input[type="button"],
.entry-content .wp-block-button__link {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	justify-content: center;
	padding: 0.7rem 1.9rem;
	border: 1px solid var(--cea-ana);
	border-radius: var(--cea-radyus);
	background-color: var(--cea-ana);
	color: #ffffff;
	cursor: pointer;
	font-family: var(--cea-font-govde);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color var(--cea-gecis), border-color var(--cea-gecis), color var(--cea-gecis);
}

.dugme:hover,
.dugme:focus,
button:hover,
button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.entry-content .wp-block-button__link:hover,
.entry-content .wp-block-button__link:focus {
	border-color: var(--cea-vurgu);
	background-color: var(--cea-vurgu);
	color: #ffffff;
}

.dugme--cizgili {
	background-color: transparent;
	color: var(--cea-ana);
}

.dugme--cizgili:hover,
.dugme--cizgili:focus {
	border-color: var(--cea-ana);
	background-color: var(--cea-ana);
	color: #ffffff;
}

.dugme--tam {
	width: 100%;
}

.dugme--kucuk {
	min-height: var(--cea-dokunma);
	padding: 0.45rem 1.1rem;
	font-size: 0.75rem;
}

/* Süs amaçlı olmayan, düz metin görünümlü düğmeler. */
.menu-anahtari,
.alt-menu-anahtari,
.filtre-anahtari,
.hizli-pencere__kapat,
.renk-nokta {
	border: 0;
	border-radius: 0;
	background: none;
	color: inherit;
	letter-spacing: normal;
	text-transform: none;
}

.menu-anahtari:hover,
.menu-anahtari:focus,
.alt-menu-anahtari:hover,
.alt-menu-anahtari:focus {
	background: none;
	color: var(--cea-vurgu-metin);
}

.metin-baglanti {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	color: var(--cea-ana);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-decoration: underline;
	text-transform: uppercase;
	text-underline-offset: 0.3em;
}

.metin-baglanti:hover,
.metin-baglanti:focus {
	color: var(--cea-vurgu-metin);
}

.rozet {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	padding: 0.15rem 0.55rem;
	border-radius: var(--cea-radyus);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.rozet--indirim {
	background-color: var(--cea-vurgu);
	color: #ffffff;
}

.rozet--tukendi {
	background-color: var(--cea-ana);
	color: #ffffff;
}

/* ==========================================================================
   12. Kombin (lookbook) şeridi
   ========================================================================== */

.lookbook {
	margin-block: 4rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--cea-cizgi);
}

.lookbook__ust {
	margin-bottom: 1.5rem;
}

.lookbook__baslik {
	margin: 0;
	font-size: clamp(1.75rem, 1.4rem + 1.4vw, 2.75rem);
}

/* Kaydırma kabı odak alabilir; kaydırma çubuğu gizlenmez. */
.lookbook__kaydir {
	overflow-x: auto;
	padding-bottom: 0.75rem;
	scrollbar-width: thin;
	scroll-snap-type: x proximity;
}

.lookbook__kaydir::-webkit-scrollbar {
	height: 10px;
}

.lookbook__kaydir::-webkit-scrollbar-track {
	background-color: var(--cea-cizgi);
}

.lookbook__kaydir::-webkit-scrollbar-thumb {
	background-color: var(--cea-ana);
}

.lookbook__serit {
	display: flex;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lookbook__oge {
	flex: 0 0 auto;
	width: clamp(150px, 40vw, 230px);
	scroll-snap-align: start;
}

.lookbook__baglanti {
	display: flex;
	height: 100%;
	flex-direction: column;
	gap: 0.5rem;
	color: var(--cea-baslik);
	text-decoration: none;
}

.lookbook__gorsel {
	display: block;
	background-color: var(--cea-cizgi);
}

.lookbook__gorsel img {
	width: 100%;
	aspect-ratio: 2 / 3;
	object-fit: cover;
}

.lookbook__ad {
	font-family: var(--cea-font-baslik);
	font-size: 1rem;
	letter-spacing: -0.01em;
	line-height: 1.25;
}

.lookbook__baglanti:hover .lookbook__ad,
.lookbook__baglanti:focus .lookbook__ad {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.lookbook__fiyat {
	color: var(--cea-govde);
	font-size: 0.8125rem;
	letter-spacing: 0.04em;
}

.lookbook__fiyat del {
	color: var(--cea-govde);
	margin-inline-end: 0.35rem;
}

.lookbook__fiyat ins {
	color: var(--cea-vurgu-metin);
	text-decoration: none;
}

/* ==========================================================================
   13. Sayfalama ve yazı gezinmesi
   ========================================================================== */

.navigation.pagination,
.post-navigation {
	margin-top: 3.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--cea-cizgi);
}

.nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.pagination .page-numbers {
	display: inline-flex;
	min-width: var(--cea-dokunma);
	min-height: var(--cea-dokunma);
	align-items: center;
	justify-content: center;
	padding-inline: 0.6rem;
	border: 1px solid var(--cea-cizgi);
	border-radius: var(--cea-radyus);
	color: var(--cea-ana);
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	text-decoration: none;
}

.pagination .page-numbers:hover,
.pagination .page-numbers:focus {
	border-color: var(--cea-ana);
}

.pagination .page-numbers.current {
	border-color: var(--cea-ana);
	background-color: var(--cea-ana);
	color: #ffffff;
}

.post-navigation .nav-links {
	display: grid;
	gap: 1.5rem;
}

.post-navigation a {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	text-decoration: none;
}

.gezinme__etiket {
	color: var(--cea-govde);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.gezinme__baslik {
	color: var(--cea-baslik);
	font-family: var(--cea-font-baslik);
	font-size: 1.1875rem;
	letter-spacing: -0.01em;
	line-height: 1.25;
}

.post-navigation a:hover .gezinme__baslik,
.post-navigation a:focus .gezinme__baslik {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.post-navigation .nav-next {
	text-align: end;
}

/* ==========================================================================
   14. Kenar çubuğu ve bileşenler
   ========================================================================== */

.kenar-cubugu {
	min-width: 0;
}

.bilesen {
	margin-bottom: 2.5rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid var(--cea-cizgi);
}

.bilesen:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}

.bilesen__baslik {
	margin: 0 0 1rem;
	font-family: var(--cea-font-govde);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.bilesen ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.bilesen li {
	padding-block: 0.35rem;
}

.bilesen li + li {
	border-top: 1px solid var(--cea-cizgi);
}

/*
 * Bileşen (widget) bağlantıları LİSTE ögesidir: son yazılar, kategoriler,
 * arşiv, etiket bulutu. Hepsi bir dokunma hedefidir, bu yüzden 44 piksel
 * kuralı geçerlidir (tarayıcıda ölçülen eski değer 20-24 pikseldi ve
 * `min-height` satır içi kutuda uygulanmadığı için `inline-flex` şarttır).
 *
 * İSTİSNA aşağıda: serbest metin bileşeninin (`textwidget`) ve paragrafın
 * İÇİNDEKİ bağlantılar cümlenin parçasıdır; onları kutuya çevirmek metin
 * akışını bozar ve WCAG 2.5.8 satır içi bağlantıları bu kuraldan muaf tutar.
 */
.bilesen a {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	color: var(--cea-ana);
	font-size: 0.9375rem;
	text-decoration: none;
}

/* Satır içi (cümle içindeki) bağlantı kutuya çevrilmez; bkz. yukarıdaki not. */
.bilesen .textwidget a,
.bilesen p a {
	display: inline;
	min-height: 0;
}

.bilesen a:hover,
.bilesen a:focus {
	color: var(--cea-vurgu-metin);
	text-decoration: underline;
}

.bilesen--lookbook .lookbook {
	margin-block: 0;
	padding-top: 0;
	border-top: 0;
}

.bilesen--lookbook .lookbook__baslik {
	font-size: 1.375rem;
}

.basit-liste {
	margin: 0;
	padding: 0;
	list-style: none;
}

.basit-liste__oge,
.basit-liste li {
	padding-block: 0.4rem;
	border-bottom: 1px solid var(--cea-cizgi);
}

/* ==========================================================================
   15. Arama formu
   ========================================================================== */

.arama-formu__etiket {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--cea-govde);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.ust-bilgi-arama .arama-formu__etiket {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.arama-formu__satir {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.arama-formu__alan,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
select,
textarea {
	width: 100%;
	min-height: var(--cea-dokunma);
	padding: 0.6rem 0.85rem;
	border: 1px solid var(--cea-cizgi);
	border-radius: var(--cea-radyus);
	background-color: var(--cea-kart);
	color: var(--cea-baslik);
	font-family: inherit;
	font-size: 1rem;
}

.arama-formu__alan {
	min-width: 0;
	flex: 1 1 160px;
}

input:focus,
select:focus,
textarea:focus {
	border-color: var(--cea-ana);
}

::placeholder {
	color: #6b6f78;
	opacity: 1;
}

.arama-formu__dugme {
	flex: 0 0 auto;
}

.arama-yeniden {
	max-width: var(--cea-olcu);
	margin-bottom: 3rem;
}

/* ==========================================================================
   16. Yorumlar
   ========================================================================== */

.yorum-alani {
	margin-top: 4rem;
	padding-top: 2rem;
	border-top: 1px solid var(--cea-cizgi);
}

.yorum-alani__baslik {
	margin-bottom: 2rem;
	font-size: clamp(1.375rem, 1.2rem + 0.8vw, 1.75rem);
}

.yorum-listesi,
.yorum-listesi .children {
	margin: 0;
	padding: 0;
	list-style: none;
}

.yorum-listesi .children {
	margin-top: 1.5rem;
	padding-inline-start: 1.25rem;
	border-inline-start: 1px solid var(--cea-cizgi);
}

.yorum-listesi li.comment {
	margin-bottom: 2rem;
}

.comment-body {
	padding-bottom: 1.5rem;
	border-bottom: 1px solid var(--cea-cizgi);
}

.comment-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 1rem;
	margin-bottom: 0.75rem;
	font-size: 0.8125rem;
}

.comment-author img {
	border-radius: var(--cea-radyus);
}

.comment-author .fn {
	color: var(--cea-baslik);
	font-style: normal;
	font-weight: 600;
}

.comment-metadata {
	color: var(--cea-govde);
	font-size: 0.75rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.reply a {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.yorum-formu-kap {
	margin-top: 2.5rem;
}

.comment-reply-title {
	font-size: clamp(1.375rem, 1.2rem + 0.6vw, 1.625rem);
}

.yorum-notu {
	color: var(--cea-govde);
	font-size: 0.8125rem;
}

.yorum-formu label,
.comment-form label {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--cea-govde);
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

/*
 * `display: inline` DEĞİL `flex`: satır içi bir kutuda `min-height` uygulanmaz
 * ve onay kutusunun dokunma hedefi 15 piksele düşer (tarayıcıda ölçüldü).
 * Etiket satırı 44 piksel olur; etikete dokunmak denetimi değiştirdiği için
 * etkin hedef satırın tamamıdır.
 */
.comment-form-cookies-consent label {
	display: flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	gap: 0.55rem;
	letter-spacing: normal;
	text-transform: none;
}

/*
 * Genişlik otomatik kalır (tam genişlik alan kuralından muaf) ama ÖLÇÜ
 * verilir: yerel 13 piksellik kutu WCAG 2.5.8'in 24 piksel alt sınırının bile
 * altındadır. Boşluk `gap` ile geldiği için sağ kenar boşluğu kaldırıldı.
 */
.comment-form-cookies-consent input {
	width: 1.375rem;
	height: 1.375rem;
	min-width: 1.375rem;
	min-height: 1.375rem;
	flex: 0 0 auto;
}

.yorum-formu__alan {
	min-height: 160px;
}

.yorumlar-kapali {
	color: var(--cea-govde);
	font-size: 0.875rem;
}

/* ==========================================================================
   17. 404 ve içerik yok
   ========================================================================== */

.hata-404,
.icerik-yok {
	max-width: var(--cea-olcu);
	margin-inline: auto;
}

.hata-404__kunye {
	margin: 0 0 0.5rem;
	color: var(--cea-vurgu-metin);
	font-family: var(--cea-font-baslik);
	font-size: clamp(3rem, 2rem + 4vw, 6rem);
	line-height: 1;
}

.hata-404__baslik {
	margin: 0 0 1.5rem;
}

.hata-404__eylem {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-block: 2rem;
}

.hata-404__oneriler {
	display: grid;
	gap: 2.5rem;
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid var(--cea-cizgi);
}

.hata-404__oneri-baslik {
	margin: 0 0 0.75rem;
	font-family: var(--cea-font-govde);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.icerik-yok__baslik {
	margin: 0 0 1rem;
}

/* ==========================================================================
   18. Alt bilgi
   ========================================================================== */

.site-alt-bilgi {
	margin-top: auto;
	border-top: 1px solid var(--cea-cizgi);
	background-color: var(--cea-ana);
	color: rgba(255, 255, 255, 0.86);
}

.site-alt-bilgi a {
	color: #ffffff;
}

.site-alt-bilgi__bilesenler {
	display: grid;
	gap: 2.5rem;
	padding-block: 3.5rem;
}

.site-alt-bilgi .bilesen {
	border-bottom-color: rgba(255, 255, 255, 0.18);
}

.site-alt-bilgi .bilesen li + li {
	border-top-color: rgba(255, 255, 255, 0.18);
}

.site-alt-bilgi .bilesen__baslik {
	color: #ffffff;
}

.site-alt-bilgi .bilesen a {
	color: rgba(255, 255, 255, 0.86);
}

.site-alt-bilgi .bilesen a:hover,
.site-alt-bilgi .bilesen a:focus {
	color: #ffffff;
}

.site-alt-bilgi__kunye {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
	padding-block: 2.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.site-alt-bilgi__ad {
	margin: 0;
	color: #ffffff;
	font-family: var(--cea-font-baslik);
	font-size: 1.5rem;
	letter-spacing: -0.02em;
}

.sosyal-liste {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sosyal-liste__baglanti {
	display: inline-flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-decoration: none;
	text-transform: uppercase;
}

.sosyal-liste__baglanti:hover,
.sosyal-liste__baglanti:focus {
	text-decoration: underline;
	text-underline-offset: 0.3em;
}

.site-alt-bilgi__taban {
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.site-alt-bilgi__taban-kap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem 2rem;
	padding-block: 1.25rem;
	font-size: 0.8125rem;
}

.telif {
	margin: 0;
}

.alt-bilgi-menu .menu-baglanti {
	min-height: var(--cea-dokunma);
	padding-inline: 0 1rem;
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.75rem;
}

.alt-bilgi-menu .menu-baglanti:hover,
.alt-bilgi-menu .menu-baglanti:focus {
	color: #ffffff;
}

/*
 * Koyu zeminde odak halkası görünür kalsın. Halka rengi --cea-vurgu koyu
 * yüzeyde 3:1'in altına düşer (#be185d üzerinde #18181b: 2,93:1); beyaz halka
 * ise aynı yüzeyde 17,7:1 verir. Seçici listesi temel odak kuralıyla birebir
 * aynıdır, böylece kaydırılabilir kaplar gibi [tabindex] taşıyan ögeler de
 * kapsanır.
 */
.site-alt-bilgi :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
.ust-cubuk :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline-color: #ffffff;
}

/* ==========================================================================
   19. Duyarlılık ve erişilebilirlik
   ========================================================================== */

.skip-link {
	left: -9999px;
}

.skip-link:focus {
	left: 8px;
}

@media (max-width: 960px) {
	.menu-anahtari {
		display: inline-flex;
	}

	.ana-gezinme .menu {
		display: none;
		width: 100%;
		flex-direction: column;
		align-items: stretch;
		padding-bottom: 0.75rem;
	}

	.ana-gezinme.gezinme--acik .menu {
		display: flex;
	}

	.ana-menu > .menu-ogesi {
		border-top: 1px solid var(--cea-cizgi);
	}

	.ana-menu > .menu-ogesi:first-child > .menu-baglanti {
		padding-inline-start: 1rem;
	}

	.menu-ogesi--alt-menulu {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

	.menu-ogesi--alt-menulu > .menu-baglanti {
		flex: 1 1 auto;
	}

	.alt-menu-anahtari {
		min-width: var(--cea-dokunma);
		min-height: var(--cea-dokunma);
	}

	.alt-menu {
		position: static;
		width: 100%;
		min-width: 0;
		border: 0;
		border-inline-start: 1px solid var(--cea-cizgi);
		margin-inline-start: 1rem;
	}

	.alt-menu-anahtari[aria-expanded="true"] + .alt-menu {
		display: block;
	}

	.filtre-anahtari {
		display: inline-flex;
	}
}

@media (min-width: 641px) {
	.yazi-akisi {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* Akışın ilk kaydı dergi manşeti gibi iki kolonu birden kaplar. */
	.akis--editoryal .yazi-akisi > .girdi--kart:first-child {
		display: grid;
		align-items: start;
		gap: 2rem;
		grid-column: 1 / -1;
		grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	}

	.akis--editoryal .yazi-akisi > .girdi--kart:first-child .girdi__baslik {
		font-size: clamp(1.75rem, 1.3rem + 1.8vw, 2.75rem);
	}

	.akis--editoryal .yazi-akisi > .girdi--kart:first-child .gorsel-blok__resim {
		aspect-ratio: 3 / 2;
	}

	.yazi-akisi--liste {
		grid-template-columns: minmax(0, 1fr);
	}

	.hata-404__oneriler {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.post-navigation .nav-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.site-alt-bilgi__bilesenler {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 961px) {
	.duzen--kenar-cubuklu .site-govde__kap {
		grid-template-columns: minmax(0, 1fr) 280px;
	}

	.kenar-cubugu__ic {
		position: sticky;
		top: 1.5rem;
	}

	.site-alt-bilgi__bilesenler {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.alt-menu {
		position: absolute;
		z-index: 20;
		inset-inline-start: 0;
		top: 100%;
	}

	.menu-ogesi--alt-menulu:hover > .alt-menu,
	.menu-ogesi--alt-menulu:focus-within > .alt-menu,
	.alt-menu-anahtari[aria-expanded="true"] + .alt-menu {
		display: block;
	}

	.alt-menu .alt-menu {
		inset-inline-start: 100%;
		top: -0.35rem;
	}
}

@media (min-width: 1101px) {
	.duzen--tek-kolon .yazi-akisi {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.akis--editoryal.duzen--tek-kolon .yazi-akisi > .girdi--kart:first-child {
		grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* ==========================================================================
   19a. Duyarlılık tabanı (mobil öncelikli güvenlik ağı)
   ==========================================================================

   Bu bölümün kuralları :where() ile yazılır; belirteçleri 0'dır ve temanın
   kendi kurallarını EZMEZ. Görevleri, hiçbir kuralın kapsamadığı ögelerin
   (eklenti çıktısı, blok düzenleyici, WooCommerce şablonları) duyarlılık
   tabanının ALTINA düşmesini engellemektir. Tabana uymayan her kural
   `php arac/duyarlilik-denetle.php` ile ölçülür ve yapı durur.
   ========================================================================== */

/*
 * Kırılamayan uzun dize (URL, ürün kodu, e-posta) 320 piksellik ekranda
 * kabından TAŞAR ve tüm sayfayı yatay kaydırır. Tek kelime taşarsa kırılır;
 * normal Türkçe metin `break-word` ile bölünmez, yalnızca son çare uygulanır.
 */
:where(body) {
	overflow-wrap: break-word;
}

/* Uzun bağlantı metni ve kod satırı en sık taşan iki ögedir. */
:where(a, code, kbd, samp, dt, dd, th, td, figcaption, blockquote) {
	overflow-wrap: anywhere;
}

/*
 * Metin alanlarında en az 16px. Neden: iOS Safari 16px'in ALTINDAKİ bir alana
 * odaklanınca sayfayı zorla yakınlaştırır ve kullanıcı bir daha uzaklaştıramaz.
 * Gövde yazı boyutu Özelleştirici'den 16px'in altına inebildiği için taban
 * devralınan değerden BAĞIMSIZ olmalıdır. Düğmeler listede YOKTUR: odakta
 * yakınlaştırma tetiklemezler, boyutları tasarım kararıdır.
 */
:where(
	input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="image"]):not([type="range"]):not([type="color"]),
	select,
	textarea
) {
	font-size: 1rem;
}

/*
 * Dokunma hedefi tabanı 44 x 44 piksel (WCAG 2.5.5). Simge görsel olarak küçük
 * kalır; büyüyen yalnızca tıklanabilir kutudur. Satır içi METİN bağlantıları
 * bu listede yoktur (WCAG 2.5.8 eşiği 24 pikseldir ve satır yüksekliği onu
 * zaten karşılar); yalnızca düğme gibi davranan ögeler kapsanır.
 */
:where(
	button,
	summary,
	[role="button"],
	[role="tab"],
	.dugme,
	input[type="submit"],
	input[type="button"],
	input[type="reset"],
	input[type="file"],
	select
) {
	min-height: var(--cea-dokunma);
	min-width: var(--cea-dokunma);
}

/*
 * Onay kutusu ve radyo. Yerel denetimin GÖRSEL boyutu 13 pikselden 22 piksele
 * çıkarılır ama 44 piksele ÇIKARILMAZ: 44 piksellik kare kutu WooCommerce
 * ödeme formunda etiketin yanında orantısız durur. Dokunma hedefi bunun yerine
 * ETİKETE taşınır — etikete dokunmak denetimi değiştirdiği için etkin hedef
 * satırın tamamıdır. İki işaretleme düzeni de desteklenir: denetim etiketin
 * İÇİNDE (WooCommerce) ve etiketin KARDEŞİ (WordPress yorum çerezi onayı).
 */
:where(input[type="checkbox"], input[type="radio"]) {
	width: 1.375rem;
	height: 1.375rem;
	min-width: 1.375rem;
	min-height: 1.375rem;
	flex: 0 0 auto;
}

:where(label:has(> input[type="checkbox"]), label:has(> input[type="radio"])),
:where(p:has(> input[type="checkbox"]), p:has(> input[type="radio"])) > label {
	display: flex;
	min-height: var(--cea-dokunma);
	align-items: center;
	gap: 0.55rem;
}

/*
 * Gömülü çerçeve (video, harita) sabit `width` niteliğiyle gelir ve dar
 * ekranda kabından taşar; `max-width` taşmayı kapatır. Oran ayırma buraya
 * YAZILMAZ: `attr()` tarayıcılarda `aspect-ratio` için desteklenmez, gömülü
 * ögenin oranını sağlayan taraf gömme kodudur (WordPress `wp-embed-aspect-*`).
 */
:where(iframe, embed, object, video) {
	max-width: 100%;
}

/*
 * %400 yakınlaştırma (WCAG 1.4.10) 1280 pikselde 320 piksel eşdeğeri bir
 * görüntü alanı üretir. Bu genişlikte hiçbir kap sabit piksele bağlı kalmaz;
 * blok düzenleyicinin geniş/tam hizalı blokları da görüntü alanına sığar.
 */
:where(.alignwide, .alignfull, .wp-block-group.alignfull) {
	max-width: 100%;
}

/*
 * Güvenli alan (çentik, yuvarlatılmış köşe, ev düğmesi çubuğu).
 *
 * `env(safe-area-inset-*)` YALNIZCA belge `viewport-fit=cover` ile açıldığında
 * ya da ana ekrana eklenmiş bağımsız (standalone) kipte sıfırdan büyük döner;
 * normal tarayıcı sekmesinde 0'dır. Bu yüzden aşağıdaki kurallar masaüstü ve
 * olağan mobil görünümü DEĞİŞTİRMEZ (max() her zaman taban değeri seçer) ama
 * PWA / WebView kabuğunda içeriğin çentiğin ya da köşe yuvarlamasının altına
 * düşmesini önler. Görüntü alanı etiketine `viewport-fit=cover` bilinçli olarak
 * EKLENMEDİ: eklemek notch'lu cihazlarda düzeni tam kenara taşır ve bu bir
 * tasarım kararıdır, duyarlılık gereği değildir.
 */
.kap {
	padding-left: max(1.25rem, env(safe-area-inset-left));
	padding-right: max(1.25rem, env(safe-area-inset-right));
}

/* Sayfanın son bloğu ev düğmesi çubuğunun altında kalmaz. */
.site-alt-bilgi {
	padding-bottom: env(safe-area-inset-bottom);
}

/* ==========================================================================
   20. Yazdırma
   ========================================================================== */

@media print {
	.ust-cubuk,
	.site-ust-bilgi__gezinme,
	.koleksiyon-serit,
	.ust-bilgi-arama,
	.ust-bilgi-eylemler,
	.kenar-cubugu,
	.magaza-filtre,
	.lookbook,
	.site-alt-bilgi,
	.yorum-formu-kap,
	.navigation,
	.skip-link {
		display: none !important;
	}

	body {
		background-color: #ffffff;
		color: #000000;
		font-size: 12pt;
	}

	.girdi--tek .girdi__icerik,
	.yorum-alani,
	.hata-404 {
		max-width: none;
	}

	a {
		text-decoration: underline;
	}
}
