/* PT Adres — sokak seçici ve eksik numara uyarısı */

/*
 * Ülke alanı — GİZLE, KALDIRMA.
 *
 * Site yalnız Türkiye'ye satıyor (woocommerce_allowed_countries = specific,
 * liste ["TR"]) — alan tek seçenekli bir <select> olarak basılıyor ve
 * müşteriye hiçbir şey sormuyor, o yüzden görünürden kaldırılıyor. Ama DOM'dan
 * SİLİNMİYOR: pt-adres.js ülkeyi üç yerde okuyor (mahalleDegisti(),
 * guardTazele(), .change('ptadres') bağlaması) ve
 * class-pt-adres-checkout.php da sunucu tarafında ($grup . '_country')
 * okuyor — hepsi 'TR' === $ulke kontrolüyle çalışıyor. Alan DOM'dan çıkarsa
 * .val() undefined döner, sokak seçici hiç render olmaz ve numara guard'ı
 * susar. WooCommerce da kargo bölgesi/vergi/doğrulama için alana bakıyor.
 *
 * Bu kural bilerek pt-hesabim'da DEĞİL, burada duruyor: pt-adres zaten hem
 * checkout hem Hesabım'da çalışıyor (pt-hesabim bilerek yalnız hesap
 * sayfalarında), zaten adres alanlarının düzenini bu dosyadan ayarlıyor
 * (bkz. checkout_adres_2_genislik()) — gizleme, ona bağımlı olan kodun
 * yanında dursun ki ileride biri "kullanılmıyor" diyip alanı silmeye
 * kalkmasın. Select CSS ile gizleniyor, select2 kurulu kalabilir (Select2
 * DOM'dan gizlenen bir <select>'i de sarmalar) — kapsam yalnız checkout ve
 * Hesabım adres formu: #billing_country_field, #shipping_country_field.
 *
 * KAPI — bu dosya PT_Adres_Checkout::scriptleri_yukle() ile enqueue ediliyor
 * ve o da PT_Adres_Checkout::aktif_mi()'ye bağlı; aktif_mi() yalnız
 * `pt_adres_ayarlar[aktif]` option'ına DEĞİL, PT_Adres_Veri::hazir_mi()'ye
 * (data/index.json var mı) de bakıyor. Yani hedef sunucuya pt-adres'in veri
 * klasörü eksik atılırsa bu dosya hiç yüklenmez ve ülke <select>'i geri
 * gelir. Bu bilinçli: gizleme, eklentinin kendi şalterinin İÇİNDE kalmalı
 * ki pt-adres kapatıldığında/eksik kurulduğunda hiçbir izi kalmasın
 * (geri alınabilirlik). Başarısızlık biçimi de zararsız — tek seçenekli,
 * ön-seçili "Türkiye" <select>'i, yani dal öncesi görünüm. Gizlemeyi
 * koşulsuz yapmak için ayrı bir enqueue yolu açmak, eklentinin kendini
 * pasif saydığı durumda bile yazı yapması demek olurdu; kozmetik kazanç
 * bunu haklı çıkarmıyor.
 *
 * !important ŞART — canlı DOM'da ölçüldü. WooCommerce'in kendi
 * address-i18n.js'i ülke değiştikçe (ve sayfa yüklenirken) locale_fields
 * listesindeki HER alanı (state hariç) koşulsuz field.show() ile geri
 * açıyor; jQuery show() önceden CSS'ten (inline değil) gizlenmiş bir
 * elemanda etiketin varsayılan display'ini (burada "block") DOĞRUDAN satır
 * içi style olarak yazıyor. Satır içi style, !important'sız bir stil
 * sayfası kuralını her zaman ezer — nitekim temanın style.css'indeki eski
 * `#billing_country_field,#shipping_country_field{display:none}` kuralı da
 * (bu görevden önce zaten oradaydı) tam bu yüzden hiç işe yaramıyordu.
 * !important'lı bir stil sayfası kuralı satır içi style'ı ezer, o yüzden
 * burada şart.
 */
#billing_country_field,
#shipping_country_field {
	display: none !important;
}

/*
 * Sokak satırı Mahalle satırının (#<onek>_address_1_field) sınıf listesini
 * birebir taşıyor (form-row, form-row-first -> form-row-last) — bu yüzden
 * burada ayrı bir margin tanımlanmıyor: tema'nın .form-row kuralı zaten
 * uygulanıyor. Satır, Flatsome'un address_1/address_2 için kurduğu yarım
 * genişlik çiftin "last" yarısını alıp Mahalle'nin yanına oturur; ayrı bir
 * tam genişlik satır açmadığı için alt taraftaki alanlar kaymıyor (G2).
 */

.pt-adres-girdi {
	width: 100%;
}

/*
 * G7 — address_2 ("Adres") etiketini Hesabım'da da göster.
 *
 * Flatsome'un ebeveyn temasındaki flatsome-shop.css, address_1/address_2'yi
 * yarım genişlik bir çift (Sokak, bina, daire no) olarak tasarladığı için
 * #billing_address_2_field > label / #shipping_address_2_field > label'ı
 * opacity:0 + width:0 ile görünmez yapıyor. Tema bunu checkout için
 * pt-checkout.css'te !important ile düzeltiyor, ama o dosya yalnız
 * checkout'ta yükleniyor — Hesabım'a hiç erişmiyor. Aynı düzeltmeyi kendi
 * eklentimizden, hem checkout hem Hesabım'da yüklenen bu dosyadan
 * uyguluyoruz (temaya dokunmadan).
 */
#billing_address_2_field > label,
#shipping_address_2_field > label {
	opacity: 1 !important;
	overflow: visible !important;
	white-space: normal !important;
	width: auto !important;
	display: block !important;
}

.pt-adres-uyari {
	display: block;
	margin-top: 6px;
	font-size: 13px;
	line-height: 1.5;
}

.pt-adres-uyari-metin {
	color: #b20000;
}

.pt-adres-kutucuk {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 4px 0 0;
	font-size: 13px;
	color: #4a4a4a;
	cursor: pointer;
}

.pt-adres-kutucuk input {
	margin: 0;
}

.pt-adres-onayli .pt-adres-uyari-metin {
	color: #4a4a4a;
	text-decoration: line-through;
}

/* Pasif sokak seçici — alan yerinde durur ama seçilemez.
   Mahalle ile daima iki sütun kalsın diye seçici hiç kaldırılmıyor. */
.pt-adres-satir--pasif .select2-selection,
.pt-adres-satir--pasif select[disabled] {
	background-color: #f5f5f7;
	color: #86868b;
	cursor: not-allowed;
}
.pt-adres-satir--pasif .select2-selection__rendered {
	color: #86868b !important;
}

/* Geri dönen müşteri yardımcısı — kayıtlı adresinde sokak adı da yazılı
   olanlara kutuyu temizlemeyi teklif eder. Guard uyarısı varken görünmez. */
.pt-adres-eski {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 10px;
	margin-top: 6px;
	font-size: 13px;
	line-height: 1.5;
	color: #6e6e73;
}
.pt-adres-temizle {
	background: none;
	border: 0;
	padding: 0;
	font: inherit;
	font-weight: 600;
	color: #165EC9;
	text-decoration: underline;
	cursor: pointer;
}
.pt-adres-temizle:hover,
.pt-adres-temizle:focus {
	color: #104a9f;
}


/*
 * Posta kodu otomatik doldurulduğunda satır gizlenir. Kod bulunamayan mahallede
 * sınıf eklenmez, alan görünür kalır ve müşteri kendisi yazar (bkz. pt-adres.js
 * postaKoduUygula/postaKoduGoster).
 */
.pt-postakodu-gizli {
	display: none !important;
}
