/*
    Created on : 21 nov 2024, 18:31:20
    Author     : Henry
    Photoslider: 2.1

*/

.photo-slider {
    --_thumb-box: 100px;
    --_thumb-box-top-bottom-padding: .5rem;
    --_slider-max-width: 400px;
    --_col-border-tansparent: hsla(0,0%,0%,0);
    --_col-border-dark: hsla(0,0%,0%,1);
    --_col-back-drop: hsla(0,0%,0%,.4);

    user-select: none;
}

@media (max-width: 500px) {
    .photo-slider {
        --_slider-max-width: 300px;
    }
}
@media (max-width: 330px) {
    .photo-slider {
        --_slider-max-width: 250px;
    }
}

.ps-info {
    display: flex;
    gap: .15rem;
    font-size: 80%;
    opacity: .65;
    max-width: var(--_slider-max-width);
}
.ps-info-right {
    flex-grow: 1;
    text-align: right;
}

.ps-thumbs-wrapper {
    display: flex;
    gap: .25rem;
    align-items: center;
    overflow-y: hidden;
    overflow-x: scroll;
    scrollbar-width: thin;
    max-width: var(--_slider-max-width);
    max-height: var(--_thumb-box);
    padding-top: var(--_thumb-box-top-bottom-padding);
    padding-bottom: var(--_thumb-box-top-bottom-padding);
}
.ps-snap-scroll {
    scroll-snap-type: inline mandatory;
}
.ps-snap-scroll > * {
    scroll-snap-align: start;
}

.ps-thumb {
    max-height: var(--_thumb-box);
    max-width: var(--_thumb-box);
    cursor: pointer;
    user-select: none;
    opacity: .4;
    border: 1px solid var(--_col-border-tansparent);
    background-color: white;
    transition: opacity .3s;
}
.ps-thumb:hover {
    opacity: .6;
}
.ps-thumb.ps-active {
    opacity: 1;
    border: 1px solid var(--_col-border-dark);
    background-color: white;
}

.ps-preview-wrap {
    display: flex;
}
.ps-preview,
.ps-preview-over {
    opacity: 0;
    display: flex;
    overflow: hidden;
    justify-content: center;
    align-content: center;
    box-sizing: border-box;
    width: var(--_slider-max-width);
    aspect-ratio: 4 / 3;
    background-color: white;
    transition: opacity .5s ease-in-out;
    border: 1px solid var(--_col-border-dark);
    
}

.ps-preview-over {
    margin-left: calc( var(--_slider-max-width) * -1);
    
}

.ps-preview img,
.ps-preview-over img {
    cursor: pointer;
    user-select: none;
    max-width: var(--_slider-max-width);
    max-height: 100%;
    object-fit: contain;
}

.ps-lrg-img-back {
    opacity: 0;
    visibility: hidden;
    display: flex;
    position: fixed;
    inset: 0;
    justify-content: center;
    align-content: center;
    background-color: var(--_col-back-drop);
    z-index: 1000;
    /*Als je de tijd asanpast moet ook de timeout in javascrit worden aangepast*/
    transition: opacity .5s ease-in-out;
    
}

.ps-lrg-img-wrap {
    margin: auto;
    padding: 1rem;
    background-color: hsla(0,0%,100%,.5);
    backdrop-filter: blur(8px);
    
}

.ps-lrg-img-back img {
    display: block;
    object-fit: scale-down;
    max-height: 85svh;
    max-width: 85svw;
    background-color: white;
    padding: 2px;
    filter: drop-shadow(5px 5px .5rem black);
}

.ps-close {
    display: flex;
    position: absolute;
    top: -.75rem;
    right: -.75rem;
    cursor: pointer;
    background-color: cornflowerblue;
    border-radius: .25rem;
    filter: drop-shadow(5px 5px .5rem black);
}
.ps-close span {
    font-size: 140%;
    line-height: 2rem !important;
    width: 2rem;
    text-align: center;
}
.ps-title-wrap {
    position: absolute;
    display: flex;
    bottom: -.5rem;
    width: calc(100% - 2rem);
    justify-content: center;   
}
.ps-title {
    padding: .25rem;
    text-align: center;
    background-color: cornflowerblue;
    border: 1px solid grey;
    border-radius: .25rem;
    filter: drop-shadow(5px 5px .5rem black);
}