* {
    width: auto;
    height: auto;
    margin: 0px;
    padding: 0px;
    border: 0px;
    outline: none;
    font-size: 1em;
    max-width: 100%;
    max-height: 100%;
    box-shadow: none;
    background: none;
    user-select: none;
    -webkit-user-drag: none;
    background-color: transparent;
}

body, html {
    width: 100vw;
    height: 100vh;
    font-size: 1vw;
    --color: DodgerBlue;
    --color_hover: red;
    --color_disabled: gray;
}

html * {
    -webkit-tap-highlight-color:rgba(255,255,255,0);
}

::backdrop {
    background-color: rgba(255,255,255,0);
}

::-webkit-scrollbar {
    width: 0.5vw;
    height: 0.5vw;
}

::-webkit-scrollbar-track {
    border-radius: 0.5vw;
    background-color: white;
}

::-webkit-scrollbar-thumb {
    border-radius: 0.5vw;
    background-color: var(--color);
}

.flex {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    background-color: transparent;
    position: relative;
    transition: all 0.5s;
    overflow: auto;
    flex-shrink: 0;
}

.container {
    width: 100%;
    height: 100%;
}

.content {
    width: 100%;
    height: 100%;
    justify-content: space-around;
    align-items: flex-start;
    align-content: flex-start;
}

.item {
    width: 30vw;
    height: 22.5vw;
    margin: 1.67vw 0px 1.67vw 0px;
    flex-flow: column;
    justify-content: flex-start;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.item:hover {
    cursor: pointer;
}

.item .preview {
    width: 100%;
    height: 75%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.item .text {
    width: 100%;
    height: 25%;
    color: var(--color);
}

.item .play {
    position: absolute;
    width: 3em;
    height: 3em;
    right: 1em;
    bottom: 1em;
}

.item .title {
    position: absolute;
    width: auto;
    height: auto;
    left: 0px;
    top: 0px;
    color: white;
    padding: 0.5em;
    background: rgba(0,0,0, 0.4);
}

.magnify {
    width: 100%;
    height: 100%;
}

.magnify img, video {
    width: auto;
    height: auto;
    max-width: 75%;
    max-height: 75%;
}

.magnify .close {
    position: absolute;
    font-size: 2vw;
    width: 1em;
    height: 1em;
    right: 0.5em;
    top: 0.5em;
}

@media only screen and (max-width: 800px) {
    body, html {
        font-size: 3vw;
    }

    .item {
        width: 100vw;
        height: 75vw;
        margin: 3vw 0px 3vw 0px;
    }

    .magnify img, video {
        width: 100%;
        max-width: 100%;
    }

    .magnify .close {
        font-size: 6vw;
    }
}
