/**
 * Bitstech Store — YouTube-like Page Loader
 * Top progress bar that animates on every page navigation
 */

.bt-page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    z-index: 2147483647;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s;
}

.bt-page-loader.bt-loading {
    opacity: 1;
}

.bt-page-loader__bar {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--bt-primary, #753beb), var(--bt-accent, #00e0f0));
    border-radius: 0 2px 2px 0;
    transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 0 8px rgba(var(--bt-primary-rgb, 117, 59, 235), 0.5),
                0 0 4px rgba(var(--bt-accent-rgb, 0, 224, 240), 0.3);
}

.bt-page-loader.bt-loading .bt-page-loader__bar {
    animation: bt-loader-pulse 2s ease-in-out infinite;
}

.bt-page-loader.bt-done .bt-page-loader__bar {
    width: 100% !important;
    transition: width 0.2s ease-out;
}

.bt-page-loader.bt-done {
    opacity: 0;
    transition: opacity 0.4s 0.2s;
}

@keyframes bt-loader-pulse {
    0% { box-shadow: 0 0 8px rgba(var(--bt-primary-rgb, 117, 59, 235), 0.5); }
    50% { box-shadow: 0 0 16px rgba(var(--bt-accent-rgb, 0, 224, 240), 0.6); }
    100% { box-shadow: 0 0 8px rgba(var(--bt-primary-rgb, 117, 59, 235), 0.5); }
}

/* Light mode adjustment */
html[data-theme="light"] .bt-page-loader__bar {
    box-shadow: 0 0 6px rgba(var(--bt-primary-rgb, 117, 59, 235), 0.4);
}
