.basket-items-hide {
    margin: 40px 0 30px;
}

.basket-items-show .line-tovar-hide {
    display: none !important;
}

.basket-items-hide .line-tovar-hide {
    padding: 28px 0;
    border-bottom: 1px solid #D9D9D9 !important;
}

.basket-items-hide .line-tovar-hide .name {
    font-size: 17px;
}

.basket-items-hide .line-tovar-hide .js--show-basket {
    float: right;
}

.js--hide-basket,
.js--show-basket,
.mark_all,
.del_all {
    cursor: pointer;
}

.js--hide-basket:hover,
.js--show-basket:hover,
.mark_all:hover,
.del_all:hover {
    opacity: .6;
}

.basket-items-show .hide {
    display: none !important;
}

.cart {
    margin-top: 30px;
}

.cart .price .old {
    position: relative;
    font-size: 15px;
    margin-bottom: 5px;
}
@media only screen and (max-width: 1200px) {
    .cart .price .old {
        font-size: 1.3vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .price .old {
        font-size: 4vw;
    }
}
.cart .price .old span {
    font-size: 20px;
}
@media only screen and (max-width: 1200px) {
    .cart .price .old span {
        font-size: 1.43vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .price .old span {
        font-size: 5vw;
    }
}
.cart .price .old,
.cart .price .old span {
    color: #7c7c7c;
}

/*.cart .price .old:after {
    position: absolute;
    content: '';
    width: calc(100% + 20px);
    height: 0px;
    border-top: solid 1px #7c7c7c;
    top: 10px;
    left: -12px;
}
@media only screen and (max-width: 896px) {
    .cart .price .old:after {
        width: calc(100% + 5vw);
        border-top: solid 1px #7c7c7c;
        top: 1vw;
        left: 0;
    }
}*/
.cart .price {
    font-size: 20px;
    grid-area: price;
    align-self: end;
    margin-bottom: 34px;
    justify-self: flex-end;
    text-align: right;
}
@media only screen and (max-width: 1200px) {
    .cart .price {
        font-size: 1.43vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .price {
        justify-self: left;
        text-align: left;
        font-size: 4vw;
        margin: 5vw 0;
    }
}
.cart .price span {
    font-weight: 500;
    font-size: 25px;
}
@media only screen and (max-width: 1200px) {
    .cart .price span {
        font-size: 1.79vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .price span {
        font-size: 5vw;
    }
}
.cart .line-tovar {
    display: grid;
    grid-template-areas:
    "cs-checkbox img name number del"
    "cs-checkbox img char price del";
    grid-template-columns: 58px 316px 1fr 1fr 20px;
    padding: 28px 0;
    border-bottom: 1px solid #D9D9D9;
}
@media only screen and (max-width: 1280px) {
    .cart .line-tovar {
        grid-template-columns: 4vw 26.5vw 1fr 1fr 20px;
    }
}
@media only screen and (max-width: 896px) {
    .cart .line-tovar {
        grid-template-columns: 9vw 35vw 40vw 7vw;
        grid-template-areas:
            "cs-checkbox img name del"
            "cs-checkbox img number number"
            "cs-checkbox price price price"
            "cs-checkbox char char char";
        padding: 2vw 0;
    }
}
.cart .line-tovar:last-child {
    border-bottom: unset;
}

.cart .name {
    font-size: 28px;
    line-height: normal;
    color: #333;
    grid-area: name;
    /*width: 470px;*/
}
@media only screen and (max-width: 1200px) {
    .cart .name {
        font-size: 2.33vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .name {
        font-size: 5vw;
    }
}
.cart .img {
    width: 278px;
    height: 237px;
    background-color: #0A2734;
    grid-area: img;
    object-fit: contain;
}
@media only screen and (max-width: 1280px) {
    .cart .img {
        width: 23vw;
        height: 23vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .img {
        width: 31vw;
        height: 31vw;
    }
}
.cart .img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.cart .char {
    font-size: 16px;
    grid-area: char;
    align-self: end;
    margin-bottom: 34px;
    margin-left: 17px;
    line-height: normal;
}
@media only screen and (max-width: 1024px) {
    .cart .char {
        font-size: 1.5vw;
    }
}
@media only screen and (max-width: 896px) {
    .cart .char {
        font-size: 4.06vw;
        margin-bottom: 5vw;
        margin-left: 5vw;
    }
}
.cart ul.char li {
    list-style: initial;
}

.cart .number {
    user-select: none;
    position: relative;
    text-align: left;
    padding: 0;
    width: 78px;
    grid-area: number;
    justify-self: flex-end;
    height: fit-content;
    margin-right: 140px;
}
@media only screen and (max-width: 896px) {
    .cart .number {
        width: 78px;
        margin-right: 0;
        justify-self: start;
        align-self: end;
    }
}
.cart .number-minus, .cart .number-plus {
    position: absolute;
    top: 0;
    width: 20px;
    height: 20px;
    
    display: block;
    background: #8F8F8F;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    font-family: arial;
    color: #fff;
    text-decoration: none;
    border-radius: 3px;
}

.cart .number-minus {
    left: 0;
    line-height: 17px;
    padding: 0 1px 0 0; 
}

.cart .number-plus {
    right: 0;
    line-height: 20px;
}

.cart .number-text {
    display: block;
    font-size: 14px;
    color: #000;
    line-height: 20px;
    height: 20px;
    padding: 0;
    margin: 0 0 0 20px;
    background: #fff;
    outline: none;
    border: none;
    width: 38px;
    text-align: center;
}

.cart .cs-checkbox {
    grid-area: cs-checkbox;
}

.cart .del {
    grid-area: del;
    width: 20px;
}

.cart .del:before {
    background-image: url("/local/templates/dikart-new/images/cart-del.svg");
    background-repeat: no-repeat;
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    object-fit: contain;
}


.cart .block-10 a.button {
    background-color: #0A2734;
}

.cart .mark {
    font-size: 16px;
    display: flex;
    justify-content: space-between;
}
@media only screen and (max-width: 896px) {
    .cart .mark {
        font-size: 4vw;
    }
}
.cart .mark .mark_all {
    cursor: pointer;
}

.cart .cs-checkbox {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.cart .cs-checkbox + label {
    display: inline-flex;
    align-items: center;
    user-select: none;
    cursor: pointer;
}

.cart .cs-checkbox + label::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    flex-grow: 0;
    border: 2px solid #8F8F8F;
    border-radius: 3px;
    margin-right: 0.5em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%;
    transition: all 0.2s ease;
}
@media only screen and (max-width: 896px) {
    .cart .cs-checkbox + label::before {
        width: 4.6875vw;
        height: 4.6875vw;
        border: .625vw solid #8F8F8F;
        border-radius: .9375vw;        
    }
}
.cart .cs-checkbox:checked + label::before {
    border-color: #8F8F8F;
    background-color: #8F8F8F;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.cart .cs-checkbox:not(:disabled):not(:checked) + label:hover::before {
    border-color: #8F8F8F;
}

#form-basket button[type="submit"] {
    width: 100%;
    background-color: #0A2734;
    color: #fff;
    font-size: 16px;
    padding: 16px 21px 18px 21px;
    margin: 30px 0 13px 0;
    display: block;
    text-align: center;
    font-weight: 500;
    cursor: pointer;
}

@media only screen and (max-width: 1400px) {
    #form-basket button[type="submit"] {

    }
}

@media only screen and (max-width: 896px) {
    #form-basket button[type="submit"] {
        font-size: 4vw;
        line-height: normal;
        padding: 4vw 2vw;
        margin-top: 2.8vw;
    }
}

#form-basket button[type="submit"]:hover {
    opacity: .7;
}

#form-basket button[type="submit"][disabled],
#form-basket button[type="submit"][disabled]:hover {
    background: #ECECEC;
    opacity: 1;
    color: #898888;
    cursor: default;
}

#form-basket .fz152 {
    display: inline-block;
    float: left;
    margin-right: 10px;
    width: auto !important;
    padding-bottom: 30px;
}
@media only screen and (max-width: 896px) {
    #form-basket .fz152 {
        margin-right: 2vw;
        padding-bottom: 5vw;
    }
}

#form-basket .fz152 input {
    -webkit-appearance: auto !important;
    width: 15px;
    height: 15px;
    padding: 0;
    margin-right: 0;
    cursor: pointer;
}
@media only screen and (max-width: 896px) {
    #form-basket .fz152 input {
        width: 4.6875vw;
        height: 4.6875vw;
    }
}
#form-basket input[type="text"] {
    border: solid 1px #ECECEC;
    height: 50px;
}

#form-basket .error input[type="text"] {
    border-color: orangered;
}

#form-basket .error .error-text {
    position: absolute;
    color: orangered;
    width: 100%;
    font-size: 12px;
    margin-top: 10px;
}
