/* ===== SCROLL PROGRESS BAR ===== */
.scroll-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, #000000, #ffffff);
    z-index: 9999;
    transition: width 0.1s ease-out;
    will-change: width;
}

/* Alternative black and white pattern */
.scroll-progress.pattern {
    background: repeating-linear-gradient(90deg,
            #000000 0px,
            #000000 10px,
            #ffffff 10px,
            #ffffff 20px);
    background-size: 20px 100%;
    animation: progressPattern 2s linear infinite;
}

@keyframes progressPattern {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: 20px 0;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .scroll-progress {
        transition: none;
    }

    .scroll-progress.pattern {
        animation: none;
        background: #ffffff;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .scroll-progress {
        background: #ffffff;
        border-bottom: 1px solid #000000;
    }
}

/* Print styles */
@media print {
    .scroll-progress {
        display: none !important;
    }
}