/* Blazor kabuk stilleri + hata UI — App.razor'daki inline <style> bloğundan taşındı
   (CSP style-src 'self' inline <style> bloklarını yasaklar; style-src-attr
   'unsafe-inline' sadece inline `style=` attribute'larına izin verir, <style> bloklarına değil).

   buradan KALDIRILAN üç kural ve nedenleri:

   1) `h1..h6, .font-heading { font-family: Poppins !important; font-weight: 700 }`
      Katmansız + en son yüklenen dosya olduğu için projedeki HER başlığı 700'e sabitliyordu;
      `.razor`'daki `font-black` / `font-semibold` utility'leri ve typography.css'in kendi
      h2=600 değeri dahil hepsini eziyordu. Başlık ağırlığı artık utility'den, yoksa
      typography.css `@layer base` varsayılanından gelir.
      (`.font-heading` sınıfının projede 0 kullanımı vardı — ölü kod.)

   2) `* { font-family: inherit }`
      Katmansız evrensel seçici, katmanlı `.font-mono{font-family:var(--font-mono)}`
      utility'sini eziyordu → 34 dosyadaki 72 `font-mono` kullanımı ölüydü. Ayrıca
      Tailwind preflight'ın `code,kbd,samp,pre` için verdiği mono yazı tipini de geri alıyordu.
      Tamamen gereksizdi: preflight zaten form elemanlarına `font:inherit` veriyor.

   3) `html, body { font-family: Poppins !important }`
      typography.css `@layer base` içinde aynısını tanımlıyor — tekrar.
      Yalnızca yatay taşma koruması korundu (gerçek davranış). */

/* `clip`, `hidden` DEĞİL. İkisi de yatay taşmayı aynı şekilde kapatır, ama `hidden`
   html/body'yi kaydırma kabı yapar ve içerideki HER `position:sticky` yüzeyi öldürür.
   Chrome 152'de aynı sayfada ölçüldü: hidden ile yapışkan sonda üstte kalması gereken
   eleman top=-600'e kaydı, clip ile top=50'de durdu; hidden'a geri dönünce yeniden
   kaydı. 3000px genişliğinde bir eleman her iki değerde de yatay kaydırma üretmiyor,
   yani koruma aynı. Sitede dokuz CSS kuralı ve yirmi üç Tailwind `sticky` kullanımı
   bu değere bağlı. */
@layer base {
    html, body {
        overflow-x: clip;
    }
}

/* Blazor Error UI — ID seçici, utility'lerle yarışmaz; katmansız kalması sorun değil */
#blazor-error-ui {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: linear-gradient(135deg, #dc2626, #b91c1c);
    color: white;
    padding: 12px 24px;
    text-align: center;
    font-size: 14px;
    font-family: var(--ds-font-sans);
}
/* Kabuk metni iki dilde basılır (App.razor); görünen, boot-init.js'in <html lang>'i olandır.
   Dil devre içinde değişince langUtils.applyLang aynı özniteliği güncellediği için bu kural
   sayfa yenilenmeden de geçerli olur. */
html[lang="en"] #blazor-error-ui [lang="tr"],
html:not([lang="en"]) #blazor-error-ui [lang="en"] {
    display: none;
}
#blazor-error-ui .reload {
    margin-left: 12px;
    color: #fef2f2;
    text-decoration: underline;
}
#blazor-error-ui .dismiss {
    margin-left: 16px;
    cursor: pointer;
    font-weight: bold;
    opacity: 0.7;
}
#blazor-error-ui .dismiss:hover {
    opacity: 1;
}
