.loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    transition: opacity var(--duration-slow) var(--ease-smooth);
}

.loader__content {
    text-align: center;
}

.loader__logo {
    margin-bottom: var(--space-md);
    animation: logo-fade-in 0.8s var(--ease-smooth) forwards;
    display: flex;
    justify-content: center;
}

.loader__logo img {
    max-width: 200px;
    height: auto;
    filter: drop-shadow(var(--shadow-glow-blue));
    display: block;
}

@keyframes logo-fade-in {
    0% { 
        opacity: 0;
        transform: translateY(-20px);
    }
    100% { 
        opacity: 1;
        transform: translateY(0);
    }
}

.loader__progress-bar {
    width: 300px;
    height: 4px;
    background: var(--color-surface);
    border-radius: 4px;
    overflow: hidden;
    position: relative;
    margin: 0 auto;
}

.loader__progress {
    width: 0%;
    height: 100%;
    background: var(--gradient-primary);
    border-radius: 4px;
    animation: loader-progress 1.5s var(--ease-smooth) forwards;
}

@keyframes loader-progress {
    0% { width: 0%; }
    100% { width: 100%; }
}
