/* sidebar */

#main .sidebar ul.default li,
#main .sidebar ul.files li {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-left: 0 !important;
}

    /* schedules selection */

    #main .sidebar ul.schedules li {
        cursor: pointer;
    }

        #main .sidebar ul.schedules li:hover span {
            text-decoration: underline;
        }

        #main .sidebar ul.schedules li button {
            align-self: start;
            margin-left: 10px;
            margin-top: 0;
        }

            #main .sidebar ul.schedules li button i[class^='fa'] {
                margin-right: 0;
            }

    /* gallery */

    a.thumbnail {
        display: inline-block;
        width: 49%;
        height: 110px;
        padding: 5px;
        margin-bottom: 5px;
        box-sizing: border-box;
        border: 1px solid rgba(0,0,0,.2);

        font-size: 0;
        line-height: 0;
    }

        a.thumbnail img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        } 
        
/* summary page */

.item {
    position: relative;
    box-sizing: border-box;
    margin-bottom: 2.5em !important;
}
    .item p {
        display: -webkit-box;
        -webkit-line-clamp: 5;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .item .button {
        position: absolute;
        bottom: 0;
        margin-top: 0;
    }

    img.image.left {
        width: 200px;
        height: 200px;
        margin-bottom: 0;
        object-fit: cover;
    }

/* detail page */

#main section:not(.sidebar) h3 {
    margin-top: 1.5em;
}

.sticky {
    position: sticky;
    top: 20px;
}