.l_main {
    width: 100%;
    padding-right: (@side-width + @gap);
    float: left;
    .post-list {
        position: relative;
        margin: 0px auto;
        margin: (-@gap /2);
        @media(max-width: @on-phone) {
            margin: 0;
        }
    }
    #comments {
        position: relative;
        padding-top: (1.5*@gap);
        background: white;
        @media (max-width: @on-phone) {
            padding-top: @gap;
        }
    }
    .post-wrapper{
        // for firefox
        column-break-inside: avoid;
        break-inside: avoid-column;
        width: 80%;
        margin: auto;
    }
    .mobile-post() {
        .post {
            padding: (1.5 * @gap) @gap;
            .meta {
                .title {
                    font-size: @article-title-size-sm;
                }
            }
            .full-width {
                margin-left: -@gap;
                margin-right: -@gap;
                padding-left: @gap;
                padding-right: @gap;
                width:~"calc(100% + 2 * @{gap})"
            }
            .auto-padding {
                padding-left: @gap;
                padding-right: @gap;
            }
            img,
            .highlight {
                margin-left: -@gap;
                margin-right: -@gap;
                width:~"calc(100% + 2 * @{gap})";
                max-width: none;
            }
        }
    }
    .post-wrapper {
        padding: (@gap/2);
        .mobile-post();
        .tags {
            margin-top: 20px;
            margin-bottom: (-1.5*@gap);
            padding-bottom: (@gap/2);
        }
        @media(max-width:@on-phone) {
            padding-left: 0;
            padding-right: 0;
        }
    }
    .post {
        position: relative;
        margin: 0 auto;
        padding: (2 * @gap) (1.5*@gap);
        //max-width: 768px;
        background: white;
        &:extend(.z-depth-1);
        .meta {
            .title {
                left: 0;
                font-size: @article-title-size;
                @media(max-width: @on-phone) {
                    font-size: @article-title-size-sm;
                }
                &:before {
                    content: none
                }
                a {
                    display: inline;
                    line-height: 1.25;
                    font-weight: normal;
                    color: lighten(@black, 2%);
                    word-break: break-word;
                    &:hover {
                        color: @accent-color;
                    }
                }
            }
            time,
            .cats,
            .read-time {
                display: inline-block;
                font-size: .75rem;
            }
            .cats {
                &:before {
                    display: inline-block;
                    @border-width: 8px;
                    content: '';
                    border-top: (@border-width/2) solid transparent;
                    border-bottom: (@border-width/2) solid transparent;
                    border-left: @border-width solid @secondary-color;
                }
                a {
                    font-weight: bold;
                    color: @secondary-color;
                }
            }
            .readtime{
                color: @grey-color;
                margin-left: 2rem
            }
            time {
                color: @grey-color;
                position: absolute;
                left: -1px;
                transform: rotate(90deg);
                transform-origin: left top;
                top: 0;
                background: white;
                padding: 0 1em;
                box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.02);
            }
        }
        .full-width,.highlight{
            margin-left: (-1.5* @gap);
            margin-right: (-1.5* @gap);
            padding-left: (1.5* @gap);
            padding-right: (1.5* @gap);
            width:~"calc(100% + 3 * @{gap})";
        }
        img {
            max-width: 100%;
        }
    }
    @media(max-width:@on-phone) {
        padding-right: 0;
        .mobile-post();
    }
}