/* Tema düzeltmeleri: ortak iletişim, ülke çipleri ve kurumsal içerik. */
.alt-saat-satiri { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 .35em; }
.alt-saat-araligi { white-space:nowrap; }
:is(.alt-son,.alt-alt,.alt-taban) > .alt-sag { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:12px 24px; margin-inline-start:auto; }
:is(.alt-son,.alt-alt,.alt-taban) .alt-sag .tk-imza { margin:0; justify-content:flex-end; }
.op-kanallar { grid-template-columns:repeat(var(--kanal-sayisi,3),minmax(0,1fr)); }
.op-kanallar > .op-kanal--adres { grid-column:1 / -1; }
/* Adres kartı: solda başlık + adres, sağda başlık + saatler (öteki kartlarla aynı düzen); saat değerleri adres gibi koyu, gün adı soluk */
.op-kanal--adres > div { flex:1; min-inline-size:0; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:14px 48px; }
.op-kanal--adres .op-kanal-saatler .op-kanal-saat { margin-top:0 !important; font-weight:600 !important; color:var(--op-metin) !important; font-size:inherit; }
.op-kanal--adres .op-kanal-saatler .alt-saat-satiri > span:first-child { color:var(--op-ikincil); font-weight:500; }
.referans-ulke-suzgeci { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 24px; scroll-margin-block-start:120px; }
.referans-ulke-suzgeci a { display:inline-flex; align-items:center; gap:8px; flex:none; padding:10px 16px; border:1px solid transparent; border-radius:var(--op-yaricap-kucuk); background:var(--op-ana-acik); color:var(--op-ana-metin); text-decoration:none; font:inherit; font-weight:400; min-height:44px; }
.referans-ulke-suzgeci a small { font-size:.8em; opacity:.72; }
.referans-ulke-suzgeci a[aria-current="page"] { background:var(--op-ana); color:#fff; }
.referans-ulke-suzgeci a:hover { filter:brightness(.95); }
.referans-ulke-suzgeci a:focus-visible { outline:2px solid var(--op-ana-metin); outline-offset:3px; }
.referans-ulke-etiketi { display:block; font-size:.78rem; line-height:1.5; color:var(--op-ikincil); font-weight:400; }
.ref-izgara > li { position:relative; }
.ref-izgara .referans-ulke-etiketi { margin:6px 12px; }
.op-duzen--yan > .op-ana.metin, .kurumsal-duzen > .kurumsal-metin-govde, .op-duzen--yan > .kurumsal-metin-govde { max-inline-size:none; inline-size:100%; min-inline-size:0; }
.op-duzen:not(.op-duzen--yan) > .kurumsal-metin-govde > :is(p,ul:not([class]),ol:not([class])) { max-inline-size:75ch; }
.kurumsal-metin-govde > :is(figure,table,.kapak,.sonraki), .op-duzen--yan > .op-ana.metin > :is(figure,table,.kapak,.sonraki) { max-inline-size:none; inline-size:100%; }
@media(max-width:700px) {
  :is(.alt-son,.alt-alt,.alt-taban) > .alt-sag { margin-inline-start:0; inline-size:100%; flex-direction:column; align-items:flex-start; }
  :is(.alt-son,.alt-alt,.alt-taban) .alt-sag .tk-imza { justify-content:flex-start; text-align:start; }
  .op-kanallar { grid-template-columns:1fr; }
  .op-kanal--adres > div { grid-template-columns:minmax(0,1fr); }
  .referans-ulke-suzgeci { flex-wrap:nowrap; overflow-x:auto; padding:4px 12px 8px 4px; mask-image:linear-gradient(to right,#000 0%,#000 calc(100% - 14px),transparent 100%); }
  [dir="rtl"] .referans-ulke-suzgeci { mask-image:linear-gradient(to left,#000 0%,#000 calc(100% - 14px),transparent 100%); }
}

.site-alt-saatler dd { white-space:nowrap; }

:is(.alt-son,.alt-alt,.alt-taban) > :is(p,.alt-telif) { min-inline-size:0; max-inline-size:100%; overflow-wrap:anywhere; }
@media(max-width:700px) { :is(.alt-son,.alt-alt,.alt-taban) > p { inline-size:100%; flex:0 1 auto; } }

/* Aynı yan düzenin iç içe metin ve .icerik varyantları. Yan menülü düzende gövde metni (paragraf, sınıfsız liste) içerik sütununu
   doldurur (tg7 Y2/Y8, 2026-10-31): sütunla yan menü arasında yalnız ızgara boşluğu kalır. 75ch okuma sınırı yalnız yan menüsüz tam
   genişlik sayfada (yukarıda .op-duzen:not(.op-duzen--yan) > .kurumsal-metin-govde). */
:is(.op-duzen--yan,.kurumsal-duzen) > article,
.op-duzen--yan > article > .metin { max-inline-size:none; max-width:none; inline-size:100%; min-inline-size:0; }
:is(.op-duzen--yan,.kurumsal-duzen) > article > :is(p,ul:not([class]),ol:not([class])),
.op-duzen--yan > article > .metin > :is(p,ul:not([class]),ol:not([class])) { max-inline-size:none; max-width:none; }
:is(.op-duzen--yan,.kurumsal-duzen) > article > :is(figure,table,.kapak,.sonraki),
.op-duzen--yan > article > .metin > :is(figure,table,.kapak,.sonraki) { max-inline-size:none; max-width:none; inline-size:100%; }
/* Tam genişliğe alınan figure'de tarayıcının yatay varsayılanı (figure { margin: 1em 40px }) sıfır (tgb7 düzeltme 1): inline-size:100% ile
   birlikte sütundan 40 px taşıyordu — Ufuk / Sahne proje kapağı sağa kayık ve telefonda sağdan kesik, Cam Hakkımızda'daki içerik görseli yan
   menüye 8 px. Dikey boşluk temanın. */
.kurumsal-metin-govde > figure, .op-duzen--yan > .op-ana.metin > figure,
:is(.op-duzen--yan,.kurumsal-duzen) > article > figure, .op-duzen--yan > article > .metin > figure { margin-inline:0; }
/* Öteki iki sütunlu (içerik | yan kutu) düzenler aynı kuralla (tg7 Y2/Y8): çekirdeğin yan paneli (.yan-yerlesim — tema .metin'e
   800–820 px sınır koyuyordu), Kapak (.sb-duzen--yan — .sb-ana 820 px), Cam hizmet sayfası (.hz-duzen — .metin 46rem), Meridyen hizmet
   sayfası (.hs-govde). Sütunun kendisi, doğrudan metin sarmalayıcısı ve gövde metni sınırsız; kart / not / çağrı gibi sınıflı parçalar
   kendi ölçüsünde kalır. */
:is(.yan-yerlesim,.sb-duzen--yan,.hz-duzen,.hs-govde) > :is(article,.sb-ana),
:is(.yan-yerlesim,.sb-duzen--yan,.hz-duzen,.hs-govde) > :is(article,.sb-ana) > :is(.metin,.icerik) { max-inline-size:none; max-width:none; min-inline-size:0; }
:is(.yan-yerlesim,.sb-duzen--yan,.hz-duzen,.hs-govde) > :is(article,.sb-ana) > :is(p,ul:not([class]),ol:not([class])),
:is(.yan-yerlesim,.sb-duzen--yan,.hz-duzen,.hs-govde) > :is(article,.sb-ana) > :is(.metin,.icerik) > :is(p,ul:not([class]),ol:not([class])) { max-inline-size:none; max-width:none; }

/* İçerik tablosunda görselle başlayan ilk sütun (tg7 Y9 2026-10-31; aynı gün denetim düzeltmesi: satır kırmama kuralı kalktı). Panelin
   makine listesi (_ParkurTablosu) ve sahibinin gövdeye yazdığı eski tablo aynı işaretlemeyle gelir: <td><img …> Ad</td>. Kapsam: ilk sütunu
   görselle başlayan, en az iki sütunlu, ikinci sütununda görsel olmayan tablo (logo ızgarası gibi yalnız görselli tablolar kural dışı).
   - Görsel 88×56 önizleme (1100 px ve altında 64×44), hücrenin başında sabit ve dikeyde ortalı; ad görselin yanında, uzun ad görselin altına değil
     yanına sarar (Ufuk parkur tablosundaki yöntem). Satırın bütün hücreleri, başlıklar dahil, dikeyde ortalı.
   - Sözcükler bölünmez: temaların .metin overflow-wrap:anywhere'i "Adet"i harf harf, 1024 px'te "düzenleme"yi ortadan bölüyordu; sütun en az
     en uzun sözcüğü kadar. Geniş ekranda ad sütunu en az görsel + 10em (iki sözcüklü ad tek satır).
   - Tablo her genişlikte kendi kutusunda yatay kayar (sayfa ve yan menü taşmaz); içeriği kısa tablo içeriği kadar geniş. Telefonda uzun
     metin sütunları (3. ve sonrası) en az 15em — satırlar dar sütunda boy atmaz; kayan kenarlarda gölge ipucu her genişlikte. */
main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) {
  display:block; inline-size:max-content; max-inline-size:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) :is(th, td) {
  vertical-align:middle; overflow-wrap:normal; word-break:normal; }
main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child:has(> img:first-child) {
  position:relative; block-size:80px; padding-inline-start:114px; }
main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child > img:first-child {
  position:absolute; inset-inline-start:14px; inset-block-start:50%; translate:0 -50%; display:block; float:none; inline-size:88px; block-size:56px;
  max-inline-size:none; max-block-size:none; margin:0; padding:0; border-radius:min(var(--op-yaricap-kucuk, 8px), 10px); object-fit:cover; }
@media (min-width:1101px) {
  main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child:has(> img:first-child) {
    min-inline-size:calc(128px + 10em); }
}
/* Kayma ipucu (kenar gölgesi) her genişlikte (tgb7 düzeltme 1; önce yalnız telefonda): tablo kutusuna sığıyorsa içerikle kayan örtüler gölgeyi
   kapatır, görünüş değişmez; sığmıyorsa kesilen kenarda gölge çıkar (Pencere 1024'te son sütun kenarda kesik ve ipucusuzdu). */
main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) {
  background-image:linear-gradient(to right, var(--op-kart, #fff) 30%, rgb(255 255 255 / 0)), linear-gradient(to left, var(--op-kart, #fff) 30%, rgb(255 255 255 / 0)),
    radial-gradient(farthest-side at 0 50%, rgb(0 0 0 / .16), rgb(0 0 0 / 0)), radial-gradient(farthest-side at 100% 50%, rgb(0 0 0 / .16), rgb(0 0 0 / 0));
  background-position:left center, right center, left center, right center; background-repeat:no-repeat;
  background-size:40px 100%, 40px 100%, 14px 100%, 14px 100%; background-attachment:local, local, scroll, scroll; }
@media (max-width:760px) {
  main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) :is(th, td):nth-child(n+3) { min-inline-size:15em; }
  /* Kapak makale metni telefonda hücreleri alt alta dizer (display:block): orada sabit değil en az yükseklik */
  main .mk-metin table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child:has(> img:first-child) {
    block-size:auto; min-block-size:68px; }
}
/* 1100 px ve altında (tablet, dar dizüstü; çoğu sayfada yan menüyle sütun ~550–650 px) görsel 64×44: metin sütunlarına yer kalır */
@media (max-width:1100px) {
  main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child:has(> img:first-child) {
    block-size:64px; padding-inline-start:86px; }
  main table:has(td:first-child > img:first-child):has(td:nth-child(2)):not(:has(td:nth-child(2) > img:first-child)) td:first-child > img:first-child {
    inset-inline-start:12px; inline-size:64px; block-size:44px; }
}

/* Alt bilgi iletişim satırları (Kademe, Panorama): her bilgi kendi satırında; saat ve adres hafif ayrık. */
address .alt-satir { display:block; }
address .alt-satir.alt-adres { margin-top:10px; }

/* Aşağıdaki dokunma ve telefon yazı kuralları yalnız tm ortak menü katmanını kullanan temalara uygulanır: o temaların
   _TemaLayout'unda [data-tk-original-menu] (+ [data-tk-menu]) vardır. Levha kendi menüsünü kullanır; tm ortak menü katmanına
   geçirilene dek başlık / yazı ölçüleri değişmez. :where() özgüllük katmaz: katmanlı temalarda sonuç aynıdır. */
@media (pointer: coarse) {
  :where(html:has([data-tk-original-menu])) :is(a, button, summary) { -webkit-tap-highlight-color: transparent; }
  html.tk-menu-dar [data-tk-menu] :is(a, button, summary):active { background-color: color-mix(in srgb, var(--ik-vurgu) 7%, transparent); transition: background-color 120ms ease-out; }
}
/* Telefon yazı ölçeği: tek ortak kural, tema kimliği korunur. Kural yalnız bölüm başlığı içindir (docs/tema-mobil-kurallari.md:
   bölüm başlığı 23–26 px, etiket en çok 13 px). Etiket biçimli h2'ler (Kalkan .etiket, Kapsül .ref-baslik, Kristal .referans-baslik,
   Meridyen .kisaca-kutu, Kavis .oz-ara, Şafak profil kartı, Kapak künye kartı) ve yan sütun (aside; iletişim penceresi olan aside
   hariç) h2'leri temanın kendi ölçüsünde kalır. :not(:where()) özgüllük katmaz: öteki h2'lerde sonuç aynıdır. */
@media (max-width: 760px), (pointer: coarse) and (max-height: 520px){
  html:where(:has([data-tk-original-menu])) main h2:not(.gizli):not(:where(aside:not([role="dialog"]) h2, .etiket, .ref-baslik, .referans-baslik, .kisaca-kutu > h2, .oz-ara, .profil-kart .ck-govde h2, .kunye-kart h2)) { font-size: clamp(23px, 6.4vw, 26px) !important; }
  html:where(:has([data-tk-original-menu])) main :is(input, select, textarea) { font-size: 16px; }
  html:where(:has([data-tk-original-menu])) main p { text-wrap: pretty; }
}

@media (max-width: 760px), (pointer: coarse) and (max-height: 520px){
  html:where(:has([data-tk-original-menu])) :is(body[data-sayfa]:not([data-sayfa="ana"]), body.ic-sayfa) main h1,
  html:where(:has([data-tk-original-menu])) main :is(.sayfa-bas, .sayfa-basi, .ic-bas) h1 { font-size: clamp(28px, 8vw, 32px) !important; }
}



/* Telefon: açılış dışındaki gövde metni. */
@media (max-width: 760px), (pointer: coarse) and (max-height: 520px){
  html.tk-menu-dar .bolum-bas__yan > p { font-size: 16.5px; }
}


/* Sığan adlar özgün ölçülerini korur; sınıf ölçümle yalnız taşan başlığa eklenir. */
@media (max-width: 760px), (pointer: coarse) and (max-height: 520px){
  html .tk-firma-olcum, html .tk-firma-olcum * { transition: none !important; }
  .tk-firma-sigdir { flex: 1 1 0 !important; min-inline-size: 0 !important; }
  .tk-firma-sigdir .logo-yazi { min-inline-size: 0; max-inline-size: 100%; white-space: normal; }
  .tk-firma-sigdir .logo-yazi :is(b,strong) { font-size: clamp(14px, 4vw, 17px) !important; line-height: 1.15; white-space: normal !important; overflow-wrap: anywhere !important; text-overflow: clip; overflow: visible !important; }
  .tk-firma-sigdir .logo-ad { min-inline-size: 0; max-inline-size: 100%; }
  .tk-firma-sigdir .logo-ad span { font-size: clamp(14px, 4vw, 17px) !important; line-height: 1.15; white-space: normal; overflow-wrap: anywhere; }
  .tk-firma-sigdir .logo-yazi small { white-space: normal; overflow-wrap: anywhere; }
  html.tk-menu-dar .tk-firma-sigdir ~ :is([data-tk-menu-ac],.ust-sag,.ust-eylem) { flex-shrink: 0; }
}
