/* ===========================================================
   BENGİ KÜLTÜR: Yükleme Ekranı (Faz 1)

   Oda geçişlerinde görünür. Normalde yükleme ekranı kaybedilen
   zamandır; burada lore anlatımının kanalı oluyor.

   Varsayılan olarak GİZLİ. JS çalışmazsa hiç görünmez ve site
   normal çalışır: bu ekran bir süs katmanı, içeriğin ön koşulu
   değil.
   =========================================================== */

.yukleme-ekrani {
    position: fixed;
    inset: 0;
    z-index: 300;
    display: none;
    align-items: center;
    justify-content: center;
    background: var(--sayfa);
    opacity: 0;
    /* Sadece opacity animasyonlaniyor: transform/opacity disinda
       bir sey animasyonlamiyoruz (performans kurali). */
    transition: opacity var(--sure) var(--egri-yumusak);
}
.yukleme-ekrani.acik {
    display: flex;
    opacity: 1;
}

.yukleme-ic {
    text-align: center;
    max-width: 460px;
    padding: 28px;
}

.yukleme-logo {
    width: 62px;
    height: auto;
    margin: 0 auto 18px;
    opacity: .9;
}

.yukleme-metin {
    font-family: var(--font-display);
    font-size: 19px;
    font-weight: 600;
    color: var(--navy);
    margin-bottom: 12px;
}

/* ---------- Noktalar ----------
   Üç nokta sırayla belirir. Sadece opacity animasyonlaniyor. */
.yukleme-noktalar {
    display: flex;
    gap: 6px;
    justify-content: center;
    margin-bottom: 26px;
}
.yukleme-noktalar span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--blue-soft);
    opacity: .25;
    animation: bgYuklemeNokta 1.2s ease-in-out infinite;
}
.yukleme-noktalar span:nth-child(2) { animation-delay: .18s; }
.yukleme-noktalar span:nth-child(3) { animation-delay: .36s; }

@keyframes bgYuklemeNokta {
    0%, 100% { opacity: .25; }
    50%      { opacity: 1; }
}

/* ---------- Alıntı ---------- */
.yukleme-alinti {
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.65;
    color: var(--ink-soft);
    font-style: italic;
    margin: 0;
    padding-top: 20px;
    border-top: 1px solid var(--line);
}
.yukleme-alinti-kim {
    display: block;
    margin-top: 8px;
    font-family: var(--font-daktilo);
    font-size: 11.5px;
    font-style: normal;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--kiremit);
}

/* Nadir varyant: hiç açıklanmıyor, sadece duruyor. */
.yukleme-nadir {
    border-top-color: transparent;
    color: var(--ink-soft);
    opacity: .75;
}

@media (max-width: 560px) {
    .yukleme-metin { font-size: 17px; }
    .yukleme-alinti { font-size: 14px; }
}

/* ---------- Hareketi azalt ----------
   Ekran yine görünür (bilgi taşıyor), sadece nokta animasyonu
   durur ve geçiş anında olur. */
@media (prefers-reduced-motion: reduce) {
    .yukleme-ekrani { transition: none; }
    .yukleme-noktalar span {
        animation: none;
        opacity: .6;
    }
}
