@import "variables";
@import "icons";
@import "rtl";

body {
    margin: 0;
    padding: 0;
    font-weight: 500;
    max-width: 100%;
    width: auto;
    color: $font-dark-black-color;
    font-size: $font-size;
    background: #F5F5F5;
}

* {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: $font-montserrat;
    margin: 0;
}

*:focus {
    outline: none;
}

a:link,
a:hover,
a:visited,
a:focus,
a:active {
    text-decoration: none;
    color: #3F60DA;
}

ul {
    padding: 0;
    list-style: none;
}

.drawer-header {
    background-image: url('../images/blur-bg.png');
    background-repeat: no-repeat;
    background-size: cover;
}

.avatar {
    background-image: url('../images/avatar.svg');
    display: inline-block;
    background-size: cover;
}

.checkbox {
    position: relative;
    display: block;

    input {
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        height: 24px;
        width: 24px;
        z-index: 100;
    }

    .checkbox-view {
        background-image: url("../images/controls.svg");
        background-position: -41px 0px;
        height: 20px;
        width: 20px;
        margin: 0;
        display: inline-block !important;
        vertical-align: middle;
        margin-right: 5px;
    }

    input:checked + .checkbox-view {
        background-position: -41px -21px;
    }

    input:disabled + .checkbox-view {
        opacity: 0.5;
        cursor: not-allowed;
    }
}

.radio {
    position: relative;
    display: block;

    input {
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        z-index: 100;
    }

    .radio-view {
        background-image: url("../images/controls.svg");
        background-position: -21px 0px;
        height: 20px;
        width: 20px;
        margin: 0;
        display: inline-block !important;
        vertical-align: middle;
        margin-right: 5px;
    }

    input:checked + .radio-view {
        background-position: -21px -21px;
    }

    input:disabled + .radio-view {
        opacity: 0.5;
        cursor: not-allowed;
    }
}

.category-container {
    margin-bottom: 28px;

    .category-list {
        -webkit-overflow-scrolling: touch;
        -overflow-scrolling: touch;
        overflow-x: auto;
        white-space: nowrap;
        padding: 16px;
        background: #fff;
    }
}

.product-grid-2 {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    grid-auto-rows: auto;
    grid-column-gap: 16px;
    grid-row-gap: 20px;
    justify-items: end;
}

.panel {
    background: #ffffff;
    margin-bottom: 28px;

    .panel-heading {
        font-weight: 700;
        font-size: 12px;
        text-transform: uppercase;
        padding: 16px;
        color: rgba(0, 0, 0, 0.86);
        padding: 16px;
    }

    .panel-content {
        padding: 16px;
    }
}

.btn {
    border: none;
    padding: 13px 50px;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    display: inline-block;
    text-transform: uppercase;
    text-align: center;

    &.btn-black {
        background: #000;
        color: #ffffff;
        border: 2px solid #000000;
    }

    &.btn-success {
        background:  #59A600;
        color: #ffffff;
        border: 2px solid  #59A600;
    }

    &.btn-outline-black {
        color: #000;
        border: 2px solid #000000;
        background: #ffffff;
    }

    &:disabled,
    &[disabled="disabled"],
    &[disabled="disabled"]:hover,
    &[disabled="disabled"]:active {
        cursor: not-allowed;
        background: #b1b1ae;
        border-color: #b1b1ae;
        box-shadow: none;
        opacity: 1;
    }

    &.btn-sm {
        padding: 6px 10px;
    }
}

.label {
    padding: 7px 12px;
    font-size: 12px;
    font-weight: 600;
    display: inline-block;
    text-transform: uppercase;

    &.label-grey {
        background: #E7E7E7;
        color: #000000;
    }
}

.vue-slider {
    float: left;
    width: 100% !important;
}

.vue-slider-dot-handle {
    background: #000000 !important;
    border-color: #000000 !important;
}

.illustration {
    background-size: cover;
    width: 220px;
    height: 220px;
    display: inline-block;
    margin-bottom: 24px;

    &.empty-category-img {
        background-image: url("../images/empty-category.png");
    }

    &.empty-orders-img {
        background-image: url("../images/empty-orders.svg");
    }

    &.empty-addresses-img {
        background-image: url("../images/empty-addresses.svg");
    }

    &.empty-reviews-img {
        background-image: url("../images/empty-reviews.svg");
    }

    &.empty-cart-img {
        background-image: url("../images/empty-cart.svg");
    }

    &.empty-wishlist-img {
        background-image: url("../images/empty-wishlist.svg");
    }

    &.empty-search-img {
        background-image: url("../images/empty-search.svg");
    }

    &.order-success-img {
        background-image: url("../images/order-success.svg");
    }

    &.offline-img {
        background-image: url("../images/offline.svg");
    }
}

.control-group {
    position: relative;
    margin-bottom: 24px;

    label {
        color: rgba(0, 0, 0, 0.56);
        font-size: 16px;
        font-weight: normal;
        position: absolute;
        pointer-events: none;
        left: 16px;
        top: 20px;
        transition: 0.2s ease all;
        -moz-transition: 0.2s ease all;
        -webkit-transition: 0.2s ease all;
        font-weight: 500;
    }

    .control {
        padding: 18px 16px;
        display: block;
        width: 100%;
        border: 1px solid rgba(0, 0, 0, 0.56);
        font-size: 14px;
        background: #ffffff;

        &:-webkit-autofill,
        &:-webkit-autofill:hover,
        &:-webkit-autofill:focus,
        &:-webkit-autofill:active {
            transition: background-color 5000s ease-in-out 0s;
        }
    }

    input.control:focus,
    select.control:focus,
    textarea.control:focus,
    input.control:not(:placeholder-shown),
    textarea.control:not(:placeholder-shown) {
        outline: none;
        border: 2px solid #000000;
        padding: 17px 15px;
    }

    input.control:focus ~ label,
    input.control:not(:placeholder-shown) ~ label,
    textarea.control:focus ~ label,
    textarea.control:not(:placeholder-shown) ~ label,
    select.control ~ label {
        top: -6px;
        font-size: 12px;
        color: rgba(0, 0, 0, 1);
        background: #fff;
        padding: 0 5px;
    }

    ::-webkit-input-placeholder {
        color: #ffffff;
    }

    :-ms-input-placeholder {
        color: #ffffff;
    }

    ::placeholder {
        color: #ffffff;
    }

    .control-info {
        font-size: 12px;
        margin-top: 16px;
        color: rgba(0, 0, 0, 0.56);

        .dot {
            width: 10px;
            height: 10px;
            float: left;
            margin-right: 8px;
            border-radius: 5px;
        }

        .info {
            display: block;
            overflow: hidden;
        }

        &.success {
            color: #59A600;

            .dot {
                background: #59A600;
            }
        }
    }

    .control-error {
        color: #ff5656;
        margin-top: 5px;
    }

    &.has-error {
        label {
            color: #ff5656 !important;
        }

        .control {
            border-color: #ff5656 !important;
        }

        .control-error {
            display: block;
        }
    }
}

.button-group {
    .btn {
        width: 100%;
        margin-bottom: 24px;

        &:last-child {
            margin-bottom: 0;
        }
    }
}

.content {
    &.dashboard {
        .header {
            padding: 0;
            top: -56px;
            position: relative;

            .icon.back-icon {
                position: absolute;
                left: 16px;
                top: 16px;
                background-image: url("../images/back-white-icon.svg");
            }

            .account-information {
                background-image: url(../images/blur-bg.png);
                background-repeat: no-repeat;
                background-size: cover;
            }
        }
    }

    &.order {
        .header {
            padding: 0;
            background: #000000;

            .icon.back-icon {
                position: absolute;
                left: 16px;
                top: 16px;
                background-image: url("../images/back-white-icon.svg");
            }

            .icon.arrow-bottom-white-icon {
                float: right;
                margin-right: 8px;
            }
        }
    }
}

.grouped-products-container {
    .grouped-product {
        padding-bottom: 50px;

        label {
            font-weight: 600;
            font-size: 14px;
            display: block;
        }

        .quantity-container {
            top: 0px;
            position: relative;
            padding: 0px 15px 15px 15px;

            .quantity {
                position: static;

                .btn {
                    padding: 4px 10px;
                }

                .quantity-label {
                    top: 50px;
                }
            }
        }
    }
}

.downloadable-products-container {
    .downloadable-product {
        .checkbox-view {
            top: 0;
            left: 0;
            position: relative;
        }
    }

    .samples-container {
        padding-bottom: 20px;
    }

    h3 {
        padding: 10px 10px 10px 0px;
    }

    span.checkbox {
        display: inline-block;
    }

    .link_sample {
        float: right;
    }

    .control-error {
        color: #ff5656;
        margin-top: 5px;
    }
}

.bundle-options-wrapper {
    .bundle-option-item {
        padding: 15px 0 15px 0;

        &:last-child {
            padding: 15px 0;
        }

        .option_label {
            padding: 10px;
            position: static;
        }

        .radio {
            padding: 10px;

            .radio-view {
                top: 0;
                left: 0;
                position: relative;

                ~ div {
                    display: inline-block;
                }
            }
        }

        .quantity-container {
            z-index: 10;
        }
    }

    .bundle-summary,
    .bundle-option-item {
        .quantity-container {
            top: 0px;
            position: relative;
            padding: 0px 15px 15px 15px;

            .quantity {
                position: static;

                .btn {
                    padding: 4px 10px;
                }

                .quantity-label {
                    top: 50px;
                }
            }
        }

        .bundle-items {
            padding-left: 5px;
            li {
                margin-bottom: 20px;

                &:last-child {
                    margin-bottom: 0px;
                }
            }

            .option_label{
                margin-top: 10px;
                font-size: 16px;
                padding: 5px 0px;
                display: block;
            }

            .selected-products{
                color:#0000008f;
                font-size: 12px;

                div{
                    padding:5px 0px;
                }
            }
        }

        .product-name-container {
            top: 20px;
            left: 50px;
            position: relative;
            display: inline-block;
        }

        div.checkbox {
            margin-bottom: 20px;

            &:last-child {
                margin-bottom: 0;
            }
        }

        span.control-error.bundel-error {
            margin-top: 32px;
            padding-left: 16px;
        }
    }

    .bundle-summary {
        padding-top: 20px;
        padding-bottom: 20px;
        position: relative;

        .quantity-container {
            padding-left: 0;
            padding-bottom: 50px;

            ~ .control-group {
                label {
                    position: static;
                }
            }
        }
        .bundel-total{
            color:#0000008f;
            font-size: 14px;
            display: flex;
            justify-content: space-between;
            width: 170px;
            margin-top: 8px;
            padding-left: 5px;
        }
        .bundle-price {
            color: #ff6472;
            font-size: 14px;
        }
    }
}

.booking-product {
    .quantity-container {
        top: 0px;
        position: relative;
        padding: 0px 15px 15px 15px;

        .quantity {
            position: static;

            .btn {
                padding: 4px 10px !important;
            }

            .quantity-label {
                top: 50px;
            }
        }
    }

    .calendar-error {
        top: -5px;
        left: -20px;
        position: relative;
    }

    span {
        &.radio {
            margin: 10px 0;
        }
    }

    .slots {
        margin-bottom: 20px;
    }
}

.booking-info-row {
    .icon {
        &.bp-slot-icon {
            background-image: url('/themes/default/assets/images/slot.svg');
            width: 32px;
            height: 32px;
        }

        ~span {
            top: -10px;
            position: relative;
        }
    }

    .toggle {
        padding-bottom: 10px;

        ~.days-availability {
            padding-bottom: 10px;
        }
    }
}

.bottom-sheet {
    .bottom-sheet-body {
        .bottom-sheet-header {
            h4 {
                font-size: 14px;
                font-weight: 500;
            }
        }
    }
}

.VueCarousel-wrapper {
    text-align: center;
    background: #F2F2F2;
}

.VueCarousel-pagination {
    position: absolute;
    bottom: 10px;

    .VueCarousel-dot {
        background: rgba(0, 0, 0, 0.16) !important;
        border: 2px solid rgba(255, 255, 255, 0.86) !important;
        border-radius: 8px !important;
        width: 6px !important;
        height: 6px !important;
        padding: 0 !important;
        vertical-align: middle;
        margin-right: 9px;

        &.VueCarousel-dot--active {
            width: 8px !important;
            height: 8px !important;
            background: #FFFFFF !important;
            border: 2px solid rgba(0, 0, 0, 0.16) !important;
        }
    }
}

.hidden {
    display: none;
}

.product-details {
    .sticker {
        display: none;
    }

    .product-price {
        font-size: 20px;
        font-weight: 600;
        color: #000000;
        margin-bottom: 16px;

        .special-price {
            float: left;
        }

        .regular-price {
            text-decoration: line-through;
            opacity: 0.56;
            font-family: 600;
            font-size: 14px;
            color: #000000;
            margin-left: 8px;
        }
    }
}

.product-price {
    .sticker {
        display: none;
    }

    .special-price {
        float: left;
    }

    .regular-price {
        text-decoration: line-through;
        opacity: 0.56;
        font-family: 600;
        font-size: 14px;
        color: #000000;
        margin-left: 8px;
    }
}

.header {
    h2,
    .header-content {
        display: inline-block;
    }
}

.display-in-bl {
    display: inline-block;
}
