.cart__form table {
    width: 100%;
}

.cart__form th {
    display: table-cell;
    text-align: left;
}

.cart__form th,
.cart__form tr.cart__form__item td {
    border-bottom: var(--border);
}

.cart__form .button.cart__form__remove {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 0;
    width: 1.5rem;
    height: 1.5rem;
}

.cart__form th, 
.cart__form td {
    padding: var(--space-2xs) var(--space-3xs);
}

.cart__form input {
    text-align: center;
    width: 2rem;
}

@media screen and (min-width: 30rem) {
    .cart__form input {
        width: 4rem;
    }
}

.cart__form th:nth-of-type(4),
.cart__form td:nth-of-type(4) {
    text-align: right;
}

@media screen and (min-width: 30rem) {
    .cart__form td:nth-of-type(1) {
        min-width: 12rem;
    }
}

.cart__form td:nth-of-type(1) {
    hyphens: auto;
}

.cart__form__item__price,
.cart__form td:nth-of-type(4) {
    font-weight: bold;
}

.cart__form .cart__form__subtotal td {
    padding-top: var(--space-m);
}

.cart__form .cart__form__total td strong {
    font-size: var(--font-size-h4);
}

.cart__form td {
    vertical-align: top;
}