.router-progress-bar {
    width: 100vw;
    height: 4px;
    overflow: hidden;
    background: fade(#ddd, 40%);
    position: fixed;
    z-index: @zindex-base + 20;
    &::after {
        content: ' ';
        height: 100%;
        width: 33.3vw;
        animation: gradcolours 5s steps(1) infinite, loadthird 1s infinite linear;
        display: block;
        transform-origin: top left;
    }
}

.grad(@hex) {
    background: linear-gradient(
        90deg,
        fade(@hex,0) 0%,
        @hex 30%,
        @hex 50%,
        @hex 70%,
        fade(@hex,0) 100%
    );
}


@keyframes loadthird {
    0%   { transform: translateX(-33.3vw); }
    100% { transform: translateX(100vw); }
}

@keyframes gradcolours {
    0%  { .grad(#e88098); }
    20% { .grad(#84bebe); }
    40% { .grad(#e98724); }
    60% { .grad(#afc94e); }
    80% { .grad(#6297a4); }
}
