.slider {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 9999;
    display: flex;
    flex-direction: column;
}

.slider > .bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: var( --color-dark-alpha );
}

.slider > .close {
    position: fixed;
    top: 1rem;
    right: 1rem;
    background-color: var( --color-light );
    border: 1px solid var( --color-cyan-dark );
    color: var( --color-cyan-dark );
    padding: .5rem 2rem;
    border-radius: 3px;
    cursor: pointer;
    opacity: .5;
    transition: background-color .3s ease-in-out,
                color .3s ease-in-out,
                opacity .3s ease-in-out;
}

.slider > .close:hover {
    opacity: 1;
    background-color: var( --color-cyan-light );
    color: var( --color-light );
}

.slider > .preview {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.slider > .preview > img {
    max-width: 95%;
    max-height: 95%;
}

.slider > .prev,
.slider > .next {
    position: fixed;
    top: 0;
    opacity: 0;
    width: 5rem;
    height: 100%;
    background-color: var( --color-light-alpha );
    transition: opacity .3s ease-in-out;
    cursor: pointer;
}

.slider > .prev:hover,
.slider > .next:hover { opacity: 1; }

.slider > .prev { left: 0; }

.slider > .next { right: 0; }
