#bonus-cart .cart-settings-item .form-control:invalid {
    border-color: var(--dngr);
}
#bonus-cart-body .cart-tools {
	flex-flow: row wrap;
}
.cart-settings-item form ~ span {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(1.2rem, -50%);
}

.cart-settings-item input:invalid ~ span::after,
.cart-settings-item input:required:valid ~ span::after,
.cart-settings-item form:invalid ~ span::after,
.cart-settings-item form:valid ~ span::after,
.cart-settings-item input:optional:valid ~ span::after {
    content: "";
    display: inline-block;
    width: 1rem;
    height: 1rem;
    margin-left: 0.25rem;
    background-size: cover !important;
}
.cart-settings-item input:invalid ~ span::after,
.cart-settings-item form:invalid ~ span::after,
.cart-settings-item input:not(:checked) ~ span::after {
    background-image: url(/images/icons/priority.svg);
    filter: invert(0.10) sepia(0.86) saturate(46.80) hue-rotate(3deg) brightness(1.00) contrast(1.19);
}
.cart-settings-item input:required:valid + span::after,
.cart-settings-item form:valid ~ span::after,
.cart-settings-item input:optional:valid + span::after {
    background-image: url(/images/icons/check.svg);
    filter: invert(0.77) sepia(0.23) saturate(8.6) hue-rotate(52deg) brightness(0.91) contrast(0.84);
}
#bonus-cart .cart-settings-item #bonus-delivery-dropdown .form-control {
    width: calc(20ch - 1.5rem + 2px)
}
.reward-tile {
    position: relative;
    display: grid;
    width: 216px;
    height: 216px;
    grid-template-areas:
        "name"
        "image"
        "points"
        "cart";
    grid-template-columns: 1fr;
    padding: 0.375rem;
    border: 1px solid var(--scndr);
    border-radius: var(--radius);
}
.reward-list > .reward-tile {
    grid-template-rows: 2.5rem 120px auto;
}
.reward-tile .name {
    grid-area: name;
    z-index: 1;
}
.reward-tile .name a.nothref {
    text-shadow: 0 0 1px var(--bg-color), 0 1px 3px var(--bg-color);
}
.reward-tile .image {
    grid-area: image;
}
.reward-tile .image img {
    max-width: 120px;
    max-height: 120px;
    border-radius: var(--radius);
}
.reward-list .reward-tile .image {
    cursor: pointer;
}
.reward-list .reward-tile .image:hover img {
    transform: scale(1.08);
    transition: transform ease-in-out 0.5s;
}
.reward-tile .points {
    grid-area: image;
    padding: 0.5rem 0.25rem;
    border-bottom-right-radius: var(--rad-mini);
    border-top-left-radius: var(--rad-mini);
    place-self: center end;
    background: var(--prmr);
    color: var(--prmr-text);
    font-weight: 500;
    box-shadow: 0.2rem 0.2rem var(--color-inact);
    z-index: 1;
}
.reward-tile .cart {
    grid-area: cart;
    place-self: end;
}
.reward-tile .cart .cart-form {
    display: flex;
    position: relative;
}
.reward-tile .cart .cart-form button.to-cart{
    display: none;
}
.reward-tile[data-in-cart="0"] .cart .cart-form button.to-cart {
    display: block;
}
.reward-tile .cart .cart-form button:not(.to-cart) {
    padding: 0;
}
.reward-tile .cart .cart-form button:not(.to-cart) img {
    margin-inline: 0;
}
.reward-tile .cart .cart-form button.minus {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.reward-tile .cart .cart-form button.plus {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.reward-tile .cart .cart-form input {
    width: 6ch;
    padding-inline: 0.1rem 0;
    border-inline: none;
    border-block: solid 1px var(--scndr);
    text-align: right;
}
.reward-tile .cart .cart-form .unit {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    width: 2.25rem;
    line-height: normal;
    padding-left: 0.4rem;
    border-block: solid 1px var(--scndr);
}
.reward-tile .cart-form .to-cart {
    z-index: 10;
    display: block;
    position: absolute;
    left:0;
    width: 100%;
    min-width: 30px;
}
.reward-tile .cart-form .to-cart[data-visible="0"] {
    display: none;
}
#reward-detail-container .reward-tile {
    width: unset;
    height: unset;
    padding: 0;
    border: none;
}
#reward-detail-container .reward-tile .banner {
    top: 30%;
}
#reward-detail-container .reward-tile .name {
    height: unset;
}
#reward-detail-container .reward-tile h1 {
    font-size: 1.4rem;
}
#reward-detail-container .reward-tile .image img {
    width: calc(100% - 2rem);
    max-width: 300px;
    height: unset;
    max-height: 300px;
    aspect-ratio: 1/1;
}
#reward-detail-container .reward-tile .cart {
    margin-top: 1.2rem;
}
.cart-items .reward-tile .image img {
    width: 60px;
    height: 60px;
}
.cart-items > .reward-tile {
    flex: 0 0 auto;
    display: grid;
    width: auto;
    height: auto;
    grid-template-columns: 30px 80px minMax(0, auto);
    grid-template-areas:
        "remove name name"
        "remove image points"
        "remove image cart"
        "remove image total"
    ;
    row-gap: .5rem;
    padding: .375rem;
    border: none;
    border-top: 1px solid var(--sccss);
    border-radius: 0;
}
.cart-items > .reward-tile .icon.remove {
    grid-area: remove;
    place-self: center start;
    cursor: pointer;
}
.cart-items > .reward-tile .total {
    display: flex;
    flex-flow: column;
    grid-area: total;
    place-self: center stretch;
}
.cart-items > .reward-tile .total .amount {
    padding-left: .25rem;
}
.cart-items > .reward-tile .name {
    grid-area: name;
    display: flex;
    flex-wrap: wrap;
    place-self: center start;
}
.cart-items > .reward-tile .name a {
    font-size: 0.9rem;
    line-height: 1rem;
}
.cart-items > .reward-tile .image {
    grid-area: image;
    place-self: center;
}
.cart-items > .reward-tile .points{
    grid-area: points;
    color: inherit;
    padding: 0;
    background: none;
    box-shadow: none;
    place-self: center end;
    font-weight: normal;
}
.cart-items > .reward-tile .cart {
    grid-area: cart;
    place-self: center end;
}
.cart-items > .reward-tile .section {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    gap: .5rem;
    flex: 0 1 auto;
}
.surcharge > * {
    flex: 0 1 auto;
}
.surcharge .surch-vat {
    flex: 1;
}
#bonus-cart .bonus-cart-summary {
    width: 14rem;
    padding-inline: 0;
}
#bonus-cart .bidpoints-info {
    padding-top: 1rem;
}
#bonus-cart.cart.modal .options-summary {
	flex: 1 0 100%;
}
#bonus-cart .step-2 .bid-table.summary :is(.item, .header) {
    grid-template-columns: 2.5fr repeat(6, 1fr);
    padding: 0.3rem;
}
#bonus-cart .bid-table.summary .item > :is(.bp-price, .qty, .bp-total, .addpay, .addpay-vat) {
    place-self: center end;
    padding-right: 0.5rem;
}
#bonus-cart .bid-table.summary .item .addpay-total {
    place-self: center end;
}

    /* sm */
    @media (min-width: 576px) {
        #reward-detail-container .reward-tile .banner {
            left: 20%;
            width: 60%;
        }
        #reward-detail-container .reward-tile h1 {
            font-size: 1.8rem;
        }
    }
    /* md */
    @media (min-width: 768px) {
        .cart-items > .reward-tile {
            grid-template-columns: 30px 80px 1fr auto minMax(max-content, 22ch);
            grid-template-areas:
        "remove image name name points"
        "remove image cart total total";
        }
        .cart-items > .reward-tile .cart {
            padding-inline: 1rem;
        }
        .points {
            place-self: center start;
        }
    }
    /* lg */
    @media (min-width: 992px) {
        .cart-items > .reward-tile {
            grid-template-columns: 30px 80px 1fr auto auto minMax(max-content, 22ch);
            grid-template-areas:
        "remove image name points cart total";
        }
    }