/* =========================================================================
   Paste Guard — Duyuru/Etkinlik detay gövdesi taşma koruması
   -------------------------------------------------------------------------
   Editörler Word'den veya render edilmiş bir web sayfasından içerik
   kopyalayıp yapıştırdığında, gelen HTML'de width:1140px gibi sabit
   inline genişlikler ve .container/.row/.col-* Bootstrap iskeleti
   olabiliyor. Bu değerler col-lg-9 gövde kolonundan taşıp sağdaki
   sidebar'ın (Paylaş, Yayın Tarihi, Diğer Duyurular) üstüne biniyordu.
   Örnek vaka: ogi.yildiz.edu.tr/node/16731 (7 Temmuz 2026).

   Bu kurallar SADECE .row.other içindeki gövde kolonunu (col-lg-9)
   kapsar; sidebar'a ve sayfanın geri kalanına dokunmaz.
   ========================================================================= */

/* 1) Gövde kolonu: içerik ne olursa olsun kolon sınırı dışına taşamaz.
      NOT: overflow-x: hidden KULLANMA — CSS spec gereği tek eksende hidden,
      diğer ekseni (overflow-y) otomatik auto yapar ve kolon bir scroll
      konteynerine dönüşüp içeride kaydırma çubuğu oluşturur (7 Temmuz 2026
      OGİ canlı vakasında görüldü). `clip` aynı kırpmayı yapar ama scroll
      konteyneri YARATMAZ. Eski tarayıcılar için hidden fallback önce gelir. */
.row.other > [class*="col-lg-9"] {
  min-width: 0;
  overflow-x: hidden;
  overflow-x: clip;
}

/* 2) Yapıştırılan Bootstrap sarmalayıcıları (container/row/col-*):
      sabit genişlikleri kolon genişliğiyle sınırla. max-width, inline
      width:1140px değerini ezer (CSS spec: max-width > width). */
.row.other > [class*="col-lg-9"] .container,
.row.other > [class*="col-lg-9"] .container-fluid,
.row.other > [class*="col-lg-9"] .row,
.row.other > [class*="col-lg-9"] [class*="col-"] {
  width: auto !important;
  max-width: 100% !important;
}

/* 3) Herhangi bir elemana inline style ile yazılmış sabit genişlikler
      (width / min-width) kolonu aşamaz. */
.row.other > [class*="col-lg-9"] [style*="width"] {
  max-width: 100% !important;
  min-width: 0 !important;
}

/* 4) Görsel ve tablolar da kolon içinde kalsın. */
.row.other > [class*="col-lg-9"] img {
  max-width: 100%;
  height: auto;
}
.row.other > [class*="col-lg-9"] table {
  max-width: 100%;
}

/* 5) Kurumsal font koruması: yapıştırılan içerik inline style ile hangi
      yazı tipini (Calibri, Times, Comic Sans...) getirirse getirsin,
      sitenin varsayılan yazı tipine döner. `inherit` kullanıldığı için
      font adı hardcode edilmez — tema fontu ileride değişse bile kural
      geçerli kalır. Boyut, renk, kalınlık gibi diğer özelliklere
      DOKUNULMAZ. Pseudo-element ikon fontları (slick oku vb.) kendi
      kurallarını doğrudan ::before üzerinde tanımladığı için etkilenmez. */
.row.other > [class*="col-lg-9"] [style*="font-family"],
.row.other > [class*="col-lg-9"] font[face] {
  font-family: inherit !important;
}

/* 6) Font boyutu koruması (başlıklar HARİÇ): p, a, span, li gibi
      elemanlara inline yazılmış font-size iptal edilir, varsayılan gövde
      boyutuna dönülür. h1-h6 bilinçli olarak kapsam dışı — editörün
      başlığa verdiği boyut korunur. A+/A- erişilebilirlik butonu inline
      `font-size !important` yazdığı ve inline+important stylesheet
      kurallarını her zaman yendiği için bu kuraldan ETKİLENMEZ,
      çalışmaya devam eder. */
.row.other > [class*="col-lg-9"] :not(h1):not(h2):not(h3):not(h4):not(h5):not(h6)[style*="font-size"] {
  font-size: inherit !important;
}
