/* Shared storefront rounding and compact product purchase controls. */
:root {
    --rei-radius-card: 24px;
    --rei-radius-control: 14px;
    --rei-radius-inset: 8px;
}

.wrapper button.button,
.wrapper a.button,
.wrapper .btn,
.wrapper input[type="submit"],
.wrapper .btn-cart {
    border-radius: var(--rei-radius-control) !important;
}
.wrapper .input-text:not(.qty),
.wrapper select,
.wrapper textarea {
    border-radius: var(--rei-radius-control) !important;
}
.wrapper .category-products .product-item-info.rei-card-upgrade,
.wrapper .rei-home-card-scope .product-item-info.rei-home-card-upgrade,
.wrapper .product-view.rei-pdp-shell .product-essential,
.wrapper .product-view.rei-pdp-shell .product-collateral .box-collateral {
    border-radius: var(--rei-radius-card) !important;
}
.wrapper .category-products .product-item-info.rei-card-upgrade .product-image,
.wrapper .rei-home-card-scope .product-item-info.rei-home-card-upgrade .product-image,
.wrapper .product-view.rei-pdp-shell .product-img-box,
.wrapper .product-view.rei-pdp-shell .product-shop {
    border-radius: 16px !important;
}

/* Home, search and category cards use the same compact price spacing. */
html#top body .category-products.rei-list-card-scope .products-grid .product-item-info.rei-card-upgrade .price-box,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .price-box {
    min-height: 0 !important;
    margin: 5px 0 !important;
}
html#top body .category-products.rei-list-card-scope .products-grid .product-item-info.rei-card-upgrade .product-name,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .product-name {
    margin-bottom: 0 !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .product-item-details,
html#top body .category-products.rei-list-card-scope .products-grid .product-item-details {
    min-height: 0 !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-bottom-no-effect,
html#top body .category-products.rei-list-card-scope .products-grid .cdz-bottom-no-effect {
    min-height: 0 !important;
    flex-basis: auto !important;
}
html#top body.cms-home .homegrid .products-grid .item .product-item-info {
    min-height: 0 !important;
}
html#top body.cms-home .homegrid .products-grid .item .product-name {
    min-height: 40px !important;
}

/* The quantity control fills the same purchase column as Add to Cart. */
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart {
    width: calc(100% - 10px) !important;
    margin: 0 5px !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .cart-qty,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .cart-qty,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty_cart {
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) 40px !important;
    align-items: center !important;
    column-gap: 4px !important;
    width: 100% !important;
    min-height: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    box-sizing: border-box !important;
    padding: 4px !important;
    border: 1px solid #e8e3dc !important;
    border-radius: var(--rei-radius-control) !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .12) !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .qty-ctl,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .qty-ctl,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty-ctl {
    height: 40px !important;
    min-width: 0 !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .qty-ctl button,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .qty-ctl button,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty-ctl button {
    display: block !important;
    width: 100% !important;
    height: 40px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: var(--rei-radius-inset) !important;
    box-shadow: none !important;
    cursor: pointer !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .decrease,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .decrease,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .decrease {
    background: #fde8e8 !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .increase,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .increase,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .increase {
    background: #e4f6e7 !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .decrease:before,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .decrease:before,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .decrease:before {
    color: #a52525 !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .increase:before,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .increase:before,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .increase:before {
    color: #167a32 !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart input.qty,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart input.qty,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart input.qty {
    height: 38px !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
html#top body .rei-home-card-scope .cart-wrapper.rei-home-card-cart .btn-cart,
html#top body .category-products.rei-list-card-scope .cart-wrapper.rei-card-cart .btn-cart,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .btn-cart {
    width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border-radius: var(--rei-radius-control) !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .product-item-inner,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-buttons-container,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-buttons-inner,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .actions-primary,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-bottom-no-effect,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .product-item-inner,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-buttons-container,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-buttons-inner,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .actions-primary,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-bottom-no-effect {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-bottom-no-effect,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-bottom-no-effect {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .product-item-inner,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .product-item-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-buttons-container,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .cdz-buttons-inner,
html#top body .rei-home-card-scope .product-item-info.rei-home-card-upgrade .actions-primary,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-buttons-container,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .cdz-buttons-inner,
html#top body .category-products.rei-list-card-scope .product-item-info.rei-card-upgrade .actions-primary {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
}
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .product-button-top,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .product-button-bottom {
    width: 100% !important;
    box-sizing: border-box !important;
}
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty_cart {
    grid-template-columns: 46px minmax(0, 1fr) 46px !important;
    min-height: 56px !important;
    height: 56px !important;
}
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty-ctl,
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart .qty-ctl button {
    height: 48px !important;
}
html#top body.catalog-product-view .product-view.rei-pdp-shell .rei-pdp-cart input.qty {
    height: 46px !important;
}
