
.shop_table.cart {
    & tr {
        position: relative;
        display: flex;
        width: min(40rem, 90%);
        padding: 0.2rem;
        border-radius: 0.5rem;
    }

    & tbody {
        display: flex;
        flex-flow: column;
        gap: 0.5rem;

        .cart_item {
            background: var(--colour-off-white);
        }

        .actions {
            width: 100%;
            margin: 0 0 0 auto;
            padding: 0.5rem;
            text-align: right;
            border-radius: 1rem;
            background: var(--colour-green);
        }
    }
}

.product-remove {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    border-radius: 100%;
    background: var(--colour-yellow);

    .remove {
        position: relative;
        display: block;
        overflow: hidden;
        width: 1.4rem;
        text-indent: 100%;
        aspect-ratio: 1 / 1;

        &::after {
            position: absolute;
            top: 0;
            left: 0;
            display: block;
            width: 100%;
            content: '';
            border-radius: 1rem;
            background: var(--colour-red);
            aspect-ratio: 1 / 1;
            mask: var(--icon-cancel);
            mask-size: 80%;
            mask-position: center;
            mask-repeat: no-repeat;
        }
    }
}

.product-price {
    font-size: 1.1rem;
    font-weight: bold;
    margin-top: auto;
    margin-left: auto;
}

.product-name {
    width: 100%;
    padding-right: 2rem;
}