@import "mixins";
@import "variables";

/* START:Listings
 ********************************************************************************* */
.listing {
    &__featured,
    &__latest {
        .container {
            @media all and (max-width: 767px) {
                padding: 0 10px;
            }
        }
    }

    .btn__view-details {
        color: #000;
        border: 1px solid rgba(184, 184, 184, 0.3);
        padding: 0 21px;
        height: 40px;
        line-height: 40px;
        border-radius: 6px;

        @include transition(all 0.2s ease-in);

        &:hover {
            background: #fff;
            color: $nav-item-color-hover;
            border: 1px solid $nav-item-color-hover;
        }
    }
}

.listing-item__blog {
    @media all and (min-width: 991px) {
        width: 75%;
        margin: 0 auto 20px;
    }
    .listing-item__desc {
        @media (max-width: 991px) {
            padding-left: 0 !important;
        }
    }
    @media (max-width: 768px) {
        .listing-item__logo {
            display: none;
        }
    }
}

.job-seeker__image {
    overflow: hidden;
    margin: 0 auto 25px;
    text-align: center;
}

.listing-item {
    min-height: 104px;
    background-color: #fff;
    box-shadow: none;
    border-bottom: 1px solid #eaebed !important;

    &.media,
    .media-body {
        overflow: visible;
    }

    &__featured-bg {
        padding: 1px 1px 1px 2px;
        background: lighten($theme_button_color_3, 30%);
        margin-right: -19px;
        @media all and (max-width: 767px) {
           margin-right: -17px;
        }
        @media all and (max-width: 480px) {
            margin-right: 0;
        }
    }
    &__title--featured {
        color: $theme_button_color_3;
        text-transform: uppercase;
        font-size: 12px;
        font-weight: bold;
        padding: 8px 10px 0;
        display: inline-block;
    }

    &:last-child {
        margin-bottom: 50px !important;
    }

    @include transition(box-shadow 0.2s ease-in);

    &:hover {
        @include prefix(box-shadow, 0 2px 14px 0 rgba(0, 0, 0, 0.08), webkit ms moz);
    }

    @media all and (max-width: 767px) {
        padding: 19px 15px;
    }

    &__companies {
        .listing-item__desc {
            padding-left: 0;
        }
    }

    &__applies,
    &__views {
        font-weight: 500;
        color: rgba(62, 62, 62, 0.3);
        display: inline-block;
    }

    &__views {
        display: inline-block;
        padding: 0 10px 0 0;
    }

    &__applies {
        padding: 0 0 0 10px;
        border-left: 1px solid #ebebeb;
        @media all and (max-width: 767px) {
            border: none;
        }
    }

    &__no-logo {
        .media-body {
            @media all and (min-width: 767px) {
                padding-left: 21px;
            }
        }

        .listing-item__desc {
            padding-left: 0;

            &.listing-item__desc-job-seeker {
                @media all and (max-width: 991px) and (min-width: 767px) {
                    padding-left: 21px;
                }
            }
        }
    }

    &__jobs-count {
        border: 1px solid rgba(225, 225, 225, 0.6);
        color: #000;
        border-radius: 6px;
        padding: 10px 40px;
        white-space: nowrap;
        min-width: 120px;
    }

    &__trash {
        display: none;
    }

    &:hover {
        .listing-item__trash {
            display: block;
            width: 25px;
            height: 25px;
            background: transparent url("../images/icon-trash.svg");
            border: none;
            position: absolute;
            right: 21px;
            bottom: 0;
            background-size: contain;

            @media all and (max-width: 767px) {
                display: none;
            }
        }
    }

    &__logo {
        &--wrapper {
            vertical-align: middle;
            display: inherit;
            width: 50px;
            min-width: 50px;
            height: 50px;
            background: #fff;
            @include prefix(box-shadow, 0 2px 14px 0 rgba(0, 0, 0, 0.08), webkit ms moz);
        }
        vertical-align: top;
        min-width: 50px;
        width: 50px;
        text-align: center;
        position: relative;
        padding-top: 30px;
        padding-right: 20px;

        .media-object {
            max-width: 50px;
            max-height: 50px;
            display: inline-block;
        }
    }

    .media-right {
        vertical-align: top;
        padding-right: 21px;
        min-width: 110px;
        padding-top: 8px;

        @media all and (max-width: 767px) {
            padding-right: 0;
        }
    }

    &__date {
        margin-bottom: 9px;
        font-size: $font-size-base;
        white-space: nowrap;

        @media all and (max-width: 767px) {
            font-size: $font-size-base;
        }
    }

    &__title {
        font-size: $font-size-x-large;
        margin-bottom: 8px;

        &:after {
            content: '';
            clear: both;
            display: block ;
        }

        a {
            color: $list-item-title-color;
            display: inline;
            word-break: break-word;
            text-decoration: none;
            &:focus,
            &:hover {
                color: lighten($list-item-title-color, 15);
            }
        }
    }

    &__info {
        &--item {
            position: relative;
            padding-right: 15px;
            margin: 0 15px 10px 0;
            font-weight: 600;
            display: inline-block;
            float: left;
            text-transform: uppercase;

            @media all and (max-width: 767px) {
                margin-right: 0;
                font-size: $font-size-base;
            }

            &:last-child {
                padding-right: 0;
                margin-right: 0;
            }

            &:before {
                content: "";
                display: inline-block;
                width: 14px;
                height: 14px;
                position: relative;
                top: 2px;
                background-size: 14px 14px;
                background-repeat: no-repeat;
                margin-right: 5px;
            }
            &-companies-jobs {
                a {
                    text-decoration: none;
                }
            }
        }

        &--status {
            border-right: 1px solid #ebebeb;
            padding-right: 10px;
            margin-right: 10px;

            &:after {
                border: none !important;
            }

            &:before {
                display: none;
            }

            &-active {
                color: #83ca4e;
            }

            &-pending {
                color: #ff6a50;
            }
        }
    }

    &__desc {
        text-overflow: ellipsis;
        margin: 10px 0 30px;
        max-height: 48px;
        line-height: 24px;
        overflow: hidden;
        max-width: 700px;
        word-break: break-word;
        &.no-skills,
        &.no-description {
            height: inherit;
            margin: 10px;
        }

        &.listing-item__desc-job-seeker {
            padding-left: 0;
        }
    }

    &:last-of-type {
        margin-bottom: 50px !important;
    }

    &__companies {
        .listing-item__logo {
            padding-top: 0;
            padding-right: 30px;
            min-width: 100px;
            width: 100px;
            @media all and (max-width: 480px) {
                width: 50px;
                min-width: 50px;
                padding-right: 15px;
            }
            .company__no-image {
                background-size: 60px;
                width: 100px;
                height: 100px;
                @media all and (max-width: 480px) {
                    width: 50px;
                    height: 50px;
                    background-size: 30px;
                }
            }
            .listing-item__logo--wrapper {
                width: 100px;
                height: 100px;
                min-width: 100px;
                @media all and (max-width: 480px) {
                    width: 50px;
                    height: 50px;
                }
                .featured-company__image {
                    max-width: 100px;
                    max-height: 100px;
                    @media all and (max-width: 480px) {
                        max-width: 50px;
                        max-height: 50px;
                    }
                }
            }
        }
    }
    @media (max-width: 768px) {
        &__list {
            .listing-item__logo {
                display: none;
            }
        }
    }
}

.complex-block {
    .listing-item__info--item {
        font-weight: 500;
    }
}

.backfilling__from,
.backfilling__from:hover {
    color: $details-body-color;

    a {
        color: $details-body-color;
    }
}

.load-more[disabled],
.load-more {
    font-size: $font-size-base;
    font-weight: bold;
    padding: 9px 25px;
    display: block;
    text-transform: uppercase;
    position: relative;

    &.loading {
        &:before,
        &:after {
            position: absolute;
        }

        &:after {
            margin-top: -15px;
        }

        &:before {
            border-radius: 6px;
        }
    }

    @include transition(all 0.3s ease-in-out);
}

.load-more__companies[disabled],
.load-more__companies {
    margin: 15px auto 0;
}

.view-all {

    &.with-banner {
        @media all and (min-width: 991px) {
            padding: 30px 135px 70px 15px;
        }
    }

    &__btn {
        width: 100%;
        height: 50px;
        border: 1px solid rgba(66, 81, 97, 0.1);
        border-radius: 0;
        line-height: 50px;
        color: $blue;
        padding: 0;
        text-transform: uppercase;
        font-weight: bold;
        @include prefix(box-shadow, 0 4px 11px 0 rgba(0, 0, 0, 0.08), webkit ms moz);
        @include transition(all 0.2s ease-in);
        &:hover {
            color: lighten($blue,5);
        }
    }
}

.back-link {
    margin-bottom: 25px;
    a {
        font-weight: bold;
        font-size: $font-size-small;
        color: rgba(44,61,80,0.20);
        text-transform: uppercase;
        &:before {
            content: '';
            background: url('../images/icon-back.svg') no-repeat left;
            width: 12px;
            height: 14px;
            margin-right: 5px;
            display: inline-block;
            margin-bottom: -2px;
        }
    }
}

.no-results {
    .search-results__title {
        font-size: $font-size-xxx-large;
        font-weight: 300;
        line-height: $font-size-xxx-large;
        display: block;
        margin-bottom: 40px;
        @media all and (max-width: 767px) {
            font-size: $font-size-xx-large;
            line-height: $font-size-xx-large;
        }
    }
    .no-listings-found {
        margin-top: 40px;
        font-size: $font-size-medium;
        color: $main-text-color;
        line-height: 28px;
    }
}
.search-results {
    @media (max-width: 768px) {
        .listing-item__logo {
            display: none;
        }
    }

    &__small {
        padding: 0 15px;
        @media all and (min-width: 991px) {
            width: $listing-item-small;
            margin: 0 auto;
            float: none;
            &.has-right-banner {
                float: left;
            }
        }
    }

    .listing-item__featured {
        background: #fff;
        position: relative;
    }

    &__companies {
        max-width: $featured-company-container-width-lg;
        margin: 30px auto 0;
        text-align: left;
        padding: 0;
        @media all and (max-width: 656px) {
            padding: 0 !important;
        }

        @media all and (max-width: 656px) {
            max-width: 100%;
        }

        .featured-company {
            display: inline-block;
            max-width: 306px;
            float: left;
            width: 100%;
            vertical-align: middle;
            margin: 13px 26px 13px 0;

            @media all and (min-width: 991px) {
                &:nth-child(1),
                &:nth-child(2),
                &:nth-child(3) {
                    margin-top: 0;
                }

                &:nth-child(3),
                &:nth-child(3n + 3) {
                    margin-right: 0;
                }
            }

            @media all and (max-width: 991px) and (min-width: 656px) {
                &:nth-child(1),
                &:nth-child(2) {
                    margin-top: 0;
                }

                &:nth-child(2),
                &:nth-child(2n + 2) {
                    margin-right: 0;
                }
            }

            @media all and (max-width: 656px) {
                float: none;
                margin: 13px 13px 13px 0;
                &:first-child {
                    margin-top: 0;
                }
            }
        }

        .featured-companies__name {
            padding-left: 15px;
        }

        .featured-companies__jobs {
            white-space: nowrap;
        }

        .featured-company__panel-footer {
            padding-left: 0;
            @media all and (max-width: 767px) {
                padding: 0;
            }
        }
    }

    &__title {
        display: inline-block;
        text-transform: uppercase;
        color: $theme_button_color_2;
        font-size: $font-size-xx-large;
        font-family: $font-family-second;
        font-weight: 400;
        line-height: 30px;
        margin-top: 0;
        margin-bottom: 0;

        @media all and (max-width: 480px) {
            width: 100%;
            display: block;
        }
    }

    &__top {
        margin-bottom: 25px;
        overflow: hidden;
        padding: 0 15px;

        &-company {
            .title__primary {
                margin-top: 12px;
            }
        }
    }

    &__404 {
        text-align: center;
    }

    &__centered {
        float: none;
        margin: 0 auto;
        text-align: center;
    }
}

.details-body__search {
    .sidebar-col {
        .alert__block-form {
            width: 100%;
            margin-bottom: 30px;
        }
    }
}

.sidebar {
    margin-bottom: 50px;
    &-col {
        margin-bottom: 50px;
    }
}

.no-refine-search {
    @media all and (min-width: 991px) {
        width: 85%;
        margin-left: auto;
        margin-right: auto;
    }

    .search-results__title {
        margin-left: 0;
        padding-left: 0;
    }

    .create-job-alert {
        @media all and (min-width: 480px) {
            margin-right: 0;
        }
    }
}