/* Açılış yükleme ekranı (splash). index.html'de <body>'nin ilk çocuğu olarak
   varsayılan görünür durur; initializeApp bitince js/main.js:hideAppLoader() ile
   kapanır. Amaç: uygulama hazır olmadan yarı-render edilmiş arayüzün görünmesini
   engellemek. Tema-nötr marka gradyanı kullanır ki koyu/açık tema seçilmeden
   (init'ten önce) ilk boyamada renk sıçraması olmasın. */
#appLoader {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #4338ca 0%, #1e1b4b 55%, #0f172a 100%);
    color: #f8fafc;
    opacity: 1;
    transition: opacity 0.4s ease;
}

/* hideAppLoader() önce fade-out (görsel geçiş), sonra hidden (DOM'dan çıkar).
   #appLoader.hidden id+class özgüllüğü sade #appLoader'ı yener. */
#appLoader.fade-out { opacity: 0; pointer-events: none; }
#appLoader.hidden { display: none; }

.app-loader-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    text-align: center;
    padding: 24px;
}

.app-loader-logo {
    width: 66px;
    height: 66px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.9rem;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

.app-loader-name {
    font-family: var(--font-display, 'Poppins', sans-serif);
    font-size: 1.55rem;
    font-weight: 700;
    letter-spacing: -0.02em;
}
.app-loader-name span { opacity: 0.65; }

.app-loader-spinner {
    width: 34px;
    height: 34px;
    margin-top: 4px;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, 0.25);
    border-top-color: #ffffff;
    animation: nsLoaderSpin 0.8s linear infinite;
}

.app-loader-text {
    font-size: 0.9rem;
    color: rgba(248, 250, 252, 0.75);
}

@keyframes nsLoaderSpin { to { transform: rotate(360deg); } }

/* Hareketi azalt tercihinde spinner dönmesin (erişilebilirlik). */
@media (prefers-reduced-motion: reduce) {
    .app-loader-spinner { animation: none; }
    #appLoader { transition: none; }
}
