/*
Theme Name: Saha Kurumsal
Description: Sade kurumsal blok tema; çok dilli (Polylang) ve sağdan sola (Arapça) uyumlu. Alt temalarla markalanır.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: saha-kurumsal
License: GPL-2.0-or-later
*/

/* Not: Yön bağımsız CSS (inline-start/end, margin-inline vb.) kullanılır; böylece Arapça (dir=rtl) düzen kendiliğinden aynalanır. */

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
:where(img) { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--wp--preset--color--vurgu); outline-offset: 2px; }

/* ---------- Üst bölüm ---------- */
.saha-ust {
	position: sticky; top: 0; z-index: 50; isolation: isolate;
	border-block-end: 1px solid var(--wp--preset--color--cizgi);
}
/* Buzlu cam arka plan ayrı katmanda: backdrop-filter başlığın KENDİSİNDE olursa, içindeki tam ekran
   mobil menü (position: fixed) başlık kutusuna hapsolur ve yalnızca ~64 px yükseklikte açılır. */
.saha-ust::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: color-mix(in srgb, var(--wp--preset--color--zemin) 92%, transparent);
	-webkit-backdrop-filter: saturate(1.4) blur(8px); backdrop-filter: saturate(1.4) blur(8px);
}

/* ---------- Mobil başlık ve açılır menü ---------- */
@media (max-width: 599px) {
	.saha-ust .saha-logo img { block-size: 34px; }
	/* sıra: logo · dil seçici · menü düğmesi (en sağda, başparmak erişimi) */
	.saha-ust .wp-block-navigation { order: 2; }
	.saha-ust .saha-dil { order: 1; gap: 0; font-size: .78rem; }
	.saha-ust .saha-dil a, .saha-ust .saha-dil span { padding: .3rem .38rem; }
	.saha-ust .wp-block-navigation__responsive-container-open { padding: .35rem; margin-inline-start: .25rem; }
	.saha-ust .wp-block-navigation__responsive-container-open svg { inline-size: 28px; block-size: 28px; }
}
/* Açık mobil menü: tam ekran, büyük dokunma alanları, alt menü girintili */
.saha-ust .wp-block-navigation__responsive-container.is-menu-open {
	padding: 1.25rem 1.5rem 2rem; background: var(--wp--preset--color--zemin); overflow-y: auto;
}
.saha-ust .is-menu-open .wp-block-navigation__responsive-container-content { gap: .15rem; padding-block-start: 3rem; align-items: flex-start !important; }
.saha-ust .is-menu-open .wp-block-navigation__container,
.saha-ust .is-menu-open .wp-block-navigation__submenu-container { align-items: flex-start !important; justify-content: flex-start !important; inline-size: 100%; }
.saha-ust .is-menu-open .wp-block-navigation-item { align-items: flex-start !important; text-align: start; }
.saha-ust .is-menu-open .wp-block-navigation-item { inline-size: 100%; }
.saha-ust .is-menu-open .wp-block-navigation-item__content { display: block; padding-block: .7rem !important; font-size: 1.15rem; font-weight: 600; color: var(--wp--preset--color--koyu); }
.saha-ust .is-menu-open .wp-block-navigation__submenu-container { padding-inline-start: 1rem !important; border-inline-start: 3px solid var(--wp--preset--color--vurgu); margin-block: .1rem .6rem; }
.saha-ust .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 1rem; font-weight: 500; padding-block: .5rem !important; }
.saha-ust .wp-block-navigation__responsive-container-close svg { inline-size: 30px; block-size: 30px; }
.admin-bar .saha-ust { top: 32px; }
@media (max-width: 782px) { .admin-bar .saha-ust { top: 46px; } }
.saha-ust .saha-logo img { display: block; block-size: 44px; inline-size: auto; border-radius: 4px; }
.saha-ust .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; }

/* Dil seçici */
.saha-dil { display: flex; gap: .25rem; list-style: none; margin: 0; padding: 0; font-size: .85rem; font-weight: 600; }
.saha-dil a, .saha-dil span { display: inline-block; padding: .3rem .5rem; border-radius: 6px; text-decoration: none; color: var(--wp--preset--color--soluk); }
.saha-dil a:hover { background: var(--wp--preset--color--zemin-acik); color: var(--wp--preset--color--koyu); }
.saha-dil .aktif { background: var(--wp--preset--color--ana); color: #fff; }

/* ---------- Bölüm başlıkları ---------- */
.saha-ust-baslik {
	font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
	color: var(--wp--preset--color--vurgu); margin-block-end: .5rem !important;
}
:lang(ar) .saha-ust-baslik { letter-spacing: 0; }
.saha-cizgili { padding-inline-start: 1rem; border-inline-start: 4px solid var(--wp--preset--color--vurgu); }

/* ---------- Karşılama (hero) ---------- */
.saha-hero { position: relative; overflow: hidden; isolation: isolate; }
.saha-hero::before {
	/* ince geometrik çizgi deseni */
	content: ""; position: absolute; inset: 0; z-index: -1; opacity: .12;
	background-image:
		linear-gradient(currentColor 1px, transparent 1px),
		linear-gradient(90deg, currentColor 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: radial-gradient(ellipse at 70% 40%, #000 20%, transparent 75%);
}
/* Sola (RTL'de sağa) yaslı dar metin: kapsayıcı genişliği korunur, satır uzunluğu iç boşlukla sınırlanır */
.saha-hero > h1 { text-wrap: balance; padding-inline-end: max(0px, calc(100% - 13em)); }
.saha-hero > p.saha-hero-alt { opacity: .92; padding-inline-end: max(0px, calc(100% - 38em)); }

/* ---------- Kartlar ---------- */
.saha-kart {
	background: var(--wp--preset--color--zemin);
	border: 1px solid var(--wp--preset--color--cizgi);
	border-radius: var(--wp--custom--radius);
	transition: border-color .2s, box-shadow .2s, transform .2s;
	block-size: 100%;
}
.saha-kart:hover { border-color: color-mix(in srgb, var(--wp--preset--color--vurgu) 45%, var(--wp--preset--color--cizgi)); box-shadow: var(--wp--custom--golge); transform: translateY(-2px); }
.saha-kart .saha-ikon {
	display: inline-grid; place-items: center; inline-size: 48px; block-size: 48px; border-radius: 10px;
	background: color-mix(in srgb, var(--wp--preset--color--vurgu) 12%, transparent);
	color: var(--wp--preset--color--vurgu); font-size: 1.4rem; line-height: 1;
}
.saha-kart .saha-ikon svg { inline-size: 26px; block-size: 26px; }
.saha-kart h3 { margin-block-start: .9rem; }
.saha-kart .saha-kart-link a { font-weight: 600; text-decoration: none; }
.saha-kart .saha-kart-link a::after { content: " →"; }
:dir(rtl) .saha-kart .saha-kart-link a::after, [dir="rtl"] .saha-kart .saha-kart-link a::after { content: " ←"; }

/* ---------- Madde listesi (onaylı) ---------- */
.saha-onay { list-style: none; padding-inline-start: 0; }
.saha-onay li { position: relative; padding-inline-start: 1.9rem; margin-block: .55rem; }
.saha-onay li::before {
	content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .3em;
	inline-size: 1.15rem; block-size: 1.15rem; border-radius: 50%;
	background: var(--wp--preset--color--vurgu)
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 70% no-repeat;
}

/* ---------- Süreç adımları ---------- */
.saha-adimlar { counter-reset: adim; }
.saha-adim { counter-increment: adim; position: relative; padding-block-start: 3.2rem !important; }
.saha-adim::before {
	content: counter(adim, decimal-leading-zero); position: absolute; inset-block-start: 0; inset-inline-start: 0;
	font-size: 2.2rem; font-weight: 800; line-height: 1; color: var(--wp--preset--color--vurgu); opacity: .9;
}

/* ---------- Sayılar ---------- */
.saha-sayi { font-size: clamp(2rem, 4vw, 2.75rem); font-weight: 800; line-height: 1; color: var(--wp--preset--color--vurgu); }

/* ---------- Ülke/etiket çipleri ---------- */
.saha-cipler { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; padding: 0; margin: 0; }
.saha-cipler li {
	padding: .4rem .8rem; border-radius: 999px; font-size: .9rem; font-weight: 600;
	background: var(--wp--preset--color--zemin); border: 1px solid var(--wp--preset--color--cizgi); color: var(--wp--preset--color--koyu);
}
.saha-cipler li::before { content: "●"; color: var(--wp--preset--color--vurgu); margin-inline-end: .45rem; font-size: .7em; vertical-align: .15em; }

/* ---------- Karşılama arka plan haritası + hareketli rotalar ---------- */
.saha-hero:has(.saha-hero-harita)::before { display: none; } /* harita varsa ızgara desenini kapat */
.saha-hero .saha-hero-harita {
	position: absolute; inset: 0; z-index: -1; max-width: none !important; margin: 0 !important;
	pointer-events: none; overflow: hidden;
}
.saha-hero-harita::after {
	/* metnin okunması için metin tarafında koyulaşan örtü (RTL'de ters yönde) */
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(90deg, rgba(150,0,0,.85) 0%, rgba(160,0,0,.5) 34%, rgba(160,0,0,0) 55%);
}
[dir="rtl"] .saha-hero-harita::after { background: linear-gradient(270deg, rgba(150,0,0,.85) 0%, rgba(160,0,0,.5) 34%, rgba(160,0,0,0) 55%); }
/* Harita bölümün yüksekliğine sığar ve metnin karşı tarafına yaslanır (LTR: sağ, RTL: sol) */
.saha-dunya { position: absolute; inset-block: 4% 4%; inset-inline-end: 0; block-size: 92%; inline-size: auto; max-inline-size: none; }
.saha-dunya .saha-kara { fill: #FFFFFF; opacity: .13; }
.saha-dunya .saha-rota-iz { fill: none; stroke: #FFFFFF; stroke-width: 1.4; stroke-dasharray: 3 7; opacity: .35; }
.saha-dunya .saha-rota {
	fill: none; stroke: #FFD2BF; stroke-width: 3; stroke-linecap: round;
	stroke-dasharray: 10 90; stroke-dashoffset: 100; animation: saha-akis 4s linear infinite;
	filter: drop-shadow(0 0 4px rgba(255,210,191,.8));
}
.saha-dunya .saha-rota-hedef circle, .saha-dunya .saha-rota-kaynak circle { fill: #FFFFFF; }
.saha-dunya .saha-rota-kaynak circle:not(.nabiz) { fill: #FE5919; stroke: #FFFFFF; stroke-width: 2.5; }
.saha-dunya .nabiz { fill: none !important; stroke: #FFFFFF; stroke-width: 2; animation: saha-nabiz 2.6s ease-out infinite; transform-origin: center; transform-box: fill-box; }
@keyframes saha-akis { to { stroke-dashoffset: 0; } }
@media (max-width: 781px) {
	/* telefonda harita metnin arkasında tam genişlik; örtü daha düz */
	.saha-hero-harita::after, [dir="rtl"] .saha-hero-harita::after { background: rgba(150,0,0,.7); }
	.saha-dunya { inset-inline-end: 50%; transform: translateX(50%); }
	[dir="rtl"] .saha-dunya { transform: translateX(-50%); }
}

/* ---------- Harita (ör. Afrika) ---------- */
.saha-harita-kutu { margin: 0; }
.saha-harita { display: block; inline-size: 100%; block-size: auto; max-inline-size: 560px; margin-inline: auto; }
.saha-harita path { fill: #E6E9ED; stroke: #FFFFFF; stroke-width: .8; stroke-linejoin: round; transition: fill .2s; }
.saha-harita path.aktif { fill: var(--wp--preset--color--ana); cursor: default; }
.saha-harita path.aktif:hover { fill: var(--wp--preset--color--vurgu); }
.saha-harita .isaret circle { fill: #FFFFFF; stroke: var(--wp--preset--color--koyu); stroke-width: 2; }
.saha-harita .isaret .halka { fill: none; stroke: #FFFFFF; stroke-width: 2; opacity: .9; animation: saha-nabiz 2.4s ease-out infinite; transform-origin: center; transform-box: fill-box; }
@keyframes saha-nabiz { 0% { transform: scale(.6); opacity: .9; } 100% { transform: scale(1.8); opacity: 0; } }

/* ---------- Referans logo şeridi ---------- */
.saha-logolar { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: clamp(1rem, 3vw, 2.5rem); }
.saha-logolar .saha-logo-ogesi {
	display: grid; place-items: center; min-inline-size: 140px; block-size: 64px; padding-inline: 1rem;
	filter: grayscale(1); opacity: .75; transition: filter .2s, opacity .2s;
	font-weight: 800; letter-spacing: .02em; color: var(--wp--preset--color--soluk); text-align: center; line-height: 1.15;
}
.saha-logolar .saha-logo-ogesi img { max-block-size: 56px; inline-size: auto; }
.saha-logolar .saha-logo-ogesi:hover { filter: none; opacity: 1; color: var(--wp--preset--color--koyu); }

/* ---------- Tablolar ---------- */
.wp-block-table.saha-tablo table { border-collapse: collapse; inline-size: 100%; font-size: .95rem; }
.wp-block-table.saha-tablo th, .wp-block-table.saha-tablo td { border: 0; border-block-end: 1px solid var(--wp--preset--color--cizgi); padding: .75rem .9rem; text-align: start; }
.wp-block-table.saha-tablo thead th { background: var(--wp--preset--color--zemin-acik); color: var(--wp--preset--color--koyu); font-weight: 700; }

/* ---------- İletişim çağrısı ---------- */
.saha-cta { border-radius: calc(var(--wp--custom--radius) * 1.6); overflow: hidden; }

/* ---------- Alt bölüm ---------- */
.saha-alt a { color: inherit; text-decoration: none; opacity: .85; }
.saha-alt a:hover { opacity: 1; text-decoration: underline; }
.saha-alt .saha-alt-baslik { font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; opacity: .6; font-weight: 700; }
:lang(ar) .saha-alt .saha-alt-baslik { letter-spacing: 0; }

/* ---------- WhatsApp düğmesi ---------- */
.saha-wa {
	position: fixed; inset-block-end: 20px; inset-inline-end: 20px; z-index: 60;
	inline-size: 56px; block-size: 56px; border-radius: 50%; display: grid; place-items: center;
	background: #25D366; color: #fff; box-shadow: 0 6px 20px rgba(0,0,0,.2); transition: transform .2s;
}
.saha-wa:hover { transform: scale(1.06); color: #fff; }
.saha-wa svg { inline-size: 30px; block-size: 30px; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
