/**
 * Swift Commerce Wishlist
 *
 * Feature-specific composition only. Shared controls, surfaces, tables,
 * badges, empty states and focus behavior live in swift-commerce-frontend.css.
 */

.swift-commerce-wishlist-button-wrapper {
    margin: var(--swift-commerce-wishlist-margin-top, 10px)
        var(--swift-commerce-wishlist-margin-right, 0)
        var(--swift-commerce-wishlist-margin-bottom, 0)
        var(--swift-commerce-wishlist-margin-left, 0);
    clear: both;
}

.swift-commerce-ui.swift-commerce-wishlist-button,
.swift-commerce-ui .swift-commerce-wishlist-button {
    gap: var(--swift-commerce-space-2);
    padding: var(--swift-commerce-wishlist-button-padding, 8px 16px);
    border: var(--swift-commerce-wishlist-button-border-width, 1px) solid
        var(--swift-commerce-wishlist-button-border-color, var(--swift-commerce-color-border));
    border-radius: var(--swift-commerce-wishlist-button-radius, var(--swift-commerce-radius-md));
    background: var(--swift-commerce-wishlist-button-bg, transparent);
    color: var(--swift-commerce-wishlist-button-color, var(--swift-commerce-color-text));
    font-size: var(--swift-commerce-wishlist-button-font-size, var(--swift-commerce-text-sm));
}

.swift-commerce-ui.swift-commerce-wishlist-button:hover,
.swift-commerce-ui .swift-commerce-wishlist-button:hover {
    background: var(--swift-commerce-wishlist-button-hover-bg, var(--swift-commerce-primary-50));
    border-color: var(--swift-commerce-wishlist-button-hover-border, var(--swift-commerce-color-primary));
    color: var(--swift-commerce-wishlist-button-hover-color, var(--swift-commerce-color-primary));
}

.swift-commerce-ui.swift-commerce-wishlist-button.in-wishlist,
.swift-commerce-ui .swift-commerce-wishlist-button.in-wishlist {
    background: var(--swift-commerce-wishlist-button-active-bg, var(--swift-commerce-color-primary));
    border-color: var(--swift-commerce-wishlist-button-active-border, var(--swift-commerce-color-primary));
    color: var(--swift-commerce-wishlist-button-active-color, var(--swift-commerce-color-on-primary));
}

.swift-commerce-ui.swift-commerce-wishlist-button.is-loading,
.swift-commerce-ui.swift-commerce-wishlist-button.loading,
.swift-commerce-ui .swift-commerce-wishlist-button.is-loading,
.swift-commerce-ui .swift-commerce-wishlist-button.loading {
    opacity: .64;
    pointer-events: none;
}

.swift-commerce-wishlist-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
}

.swift-commerce-wishlist-icon svg {
    display: block;
    width: 1.125rem;
    height: 1.125rem;
    fill: none;
    stroke: currentColor;
}

.swift-commerce-wishlist-button.in-wishlist .swift-commerce-wishlist-icon svg {
    fill: currentColor;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    position: relative;
}

.swift-commerce-ui.swift-commerce-wishlist-loop,
.swift-commerce-ui .swift-commerce-wishlist-loop {
    position: absolute;
    z-index: 10;
    width: var(--swift-commerce-wishlist-loop-size, 36px);
    height: var(--swift-commerce-wishlist-loop-size, 36px);
    min-width: var(--swift-commerce-wishlist-loop-size, 36px);
    min-height: var(--swift-commerce-wishlist-loop-size, 36px);
    padding: 0;
    border: 1px solid color-mix(in srgb, var(--swift-commerce-color-border) 70%, transparent);
    border-radius: var(--swift-commerce-radius-pill);
    background: var(--swift-commerce-wishlist-loop-bg, var(--swift-commerce-color-surface));
    color: var(--swift-commerce-wishlist-loop-color, var(--swift-commerce-color-text));
    box-shadow: var(--swift-commerce-wishlist-loop-shadow, var(--swift-commerce-shadow-sm));
}

.swift-commerce-ui.swift-commerce-wishlist-loop:hover,
.swift-commerce-ui .swift-commerce-wishlist-loop:hover {
    color: var(--swift-commerce-color-primary);
    transform: translateY(-1px);
    box-shadow: var(--swift-commerce-shadow-md);
}

.swift-commerce-ui.swift-commerce-wishlist-loop.in-wishlist,
.swift-commerce-ui .swift-commerce-wishlist-loop.in-wishlist {
    border-color: var(--swift-commerce-wishlist-loop-active, var(--swift-commerce-color-primary));
    background: var(--swift-commerce-wishlist-loop-active, var(--swift-commerce-color-primary));
    color: var(--swift-commerce-color-on-primary);
}

.swift-commerce-wishlist-loop .swift-commerce-wishlist-text {
    display: none;
}

.swift-commerce-wishlist-loop.position-top-left {
    top: var(--swift-commerce-wishlist-loop-offset, 10px);
    left: var(--swift-commerce-wishlist-loop-offset, 10px);
}

.swift-commerce-wishlist-loop.position-top-right {
    top: var(--swift-commerce-wishlist-loop-offset, 10px);
    right: var(--swift-commerce-wishlist-loop-offset, 10px);
}

.swift-commerce-wishlist-loop.position-bottom-left {
    bottom: var(--swift-commerce-wishlist-loop-offset, 10px);
    left: var(--swift-commerce-wishlist-loop-offset, 10px);
}

.swift-commerce-wishlist-loop.position-bottom-right {
    right: var(--swift-commerce-wishlist-loop-offset, 10px);
    bottom: var(--swift-commerce-wishlist-loop-offset, 10px);
}

.swift-commerce-wishlist-loop.position-after-add-to-cart {
    position: static;
    margin-top: var(--swift-commerce-space-2);
}

.swift-commerce-wishlist-toast {
    position: fixed;
    z-index: var(--swift-commerce-z-toast, 999999);
    display: flex;
    align-items: center;
    gap: var(--swift-commerce-space-3);
    width: min(360px, calc(100vw - 32px));
    padding: var(--swift-commerce-space-3) var(--swift-commerce-space-4);
    border: 1px solid color-mix(in srgb, var(--swift-commerce-wishlist-toast-color, #fff) 18%, transparent);
    border-radius: var(--swift-commerce-wishlist-toast-radius, var(--swift-commerce-radius-lg));
    background: var(--swift-commerce-wishlist-toast-bg, var(--swift-commerce-color-text));
    color: var(--swift-commerce-wishlist-toast-color, #fff);
    box-shadow: var(--swift-commerce-wishlist-toast-shadow, var(--swift-commerce-shadow-lg));
    opacity: 0;
    transform: translateY(12px);
    transition: opacity var(--swift-commerce-duration) var(--swift-commerce-ease-out),
        transform var(--swift-commerce-duration) var(--swift-commerce-ease-out);
}

.swift-commerce-wishlist-toast.show {
    opacity: 1;
    transform: translateY(0);
}

.swift-commerce-wishlist-toast.animation-fade {
    transform: none;
}

.swift-commerce-wishlist-toast.animation-bounce {
    transform: scale(.96);
}

.swift-commerce-wishlist-toast.animation-fade.show,
.swift-commerce-wishlist-toast.animation-bounce.show {
    transform: none;
}

.swift-commerce-wishlist-toast.error {
    background: var(--swift-commerce-color-danger);
}

.swift-commerce-wishlist-toast-icon {
    display: inline-flex;
}

.swift-commerce-wishlist-toast-message {
    flex: 1;
}

.swift-commerce-wishlist-toast.position-bottom-right { right: 20px; bottom: 20px; }
.swift-commerce-wishlist-toast.position-bottom-left { bottom: 20px; left: 20px; }
.swift-commerce-wishlist-toast.position-top-right { top: 20px; right: 20px; }
.swift-commerce-wishlist-toast.position-top-left { top: 20px; left: 20px; }
.swift-commerce-wishlist-toast.position-bottom-center { bottom: 20px; left: 50%; transform: translate(-50%, 12px); }
.swift-commerce-wishlist-toast.position-top-center { top: 20px; left: 50%; transform: translate(-50%, -12px); }
.swift-commerce-wishlist-toast.position-bottom-center.show,
.swift-commerce-wishlist-toast.position-top-center.show { transform: translate(-50%, 0); }

.swift-commerce-wishlist-toast.position-bottom-center.animation-fade,
.swift-commerce-wishlist-toast.position-top-center.animation-fade {
    transform: translate(-50%, 0);
}

.swift-commerce-wishlist-toast.position-bottom-center.animation-bounce,
.swift-commerce-wishlist-toast.position-top-center.animation-bounce {
    transform: translate(-50%, 0) scale(.96);
}

.swift-commerce-wishlist-toast.position-bottom-center.animation-bounce.show,
.swift-commerce-wishlist-toast.position-top-center.animation-bounce.show {
    transform: translate(-50%, 0);
}

.swift-commerce-wishlist-preview .swift-commerce-wishlist-toast {
    position: static;
    width: auto;
    opacity: 1;
    transform: none;
}

.swift-commerce-wishlist-page,
.swift-commerce-wishlist-widget {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
}

.swift-commerce-wishlist-preview-stage {
    width: 100%;
    min-height: 420px;
    padding: clamp(16px, 4vw, 40px);
    overflow: auto;
    background: var(--swift-commerce-color-surface);
}

.swift-commerce-wishlist-preview-stage .swift-commerce-wishlist-page {
    max-width: none;
}

.swift-commerce-wishlist-live-preview {
    align-items: stretch;
}

.swift-commerce-wishlist-live-preview :is(
    .swift-commerce-wishlist-storefront-stage,
    .swift-commerce-wishlist-preview-stage
) {
    background: transparent;
}

.swift-commerce-wishlist-live-preview .swift-commerce-wishlist-page {
    padding: clamp(16px, 3vw, 28px);
    border-radius: var(--swift-commerce-radius-lg);
    background: var(--swift-commerce-color-surface);
    box-shadow: var(--swift-commerce-shadow-sm);
}

.swift-commerce-wishlist-storefront-stage {
    display: flex;
    width: 100%;
    min-height: 460px;
    align-items: center;
    justify-content: center;
    padding: clamp(20px, 4vw, 40px);
    background: var(--swift-commerce-color-surface);
}

.swift-commerce-wishlist-button-preview {
    flex-direction: column;
    gap: var(--swift-commerce-space-6);
}

.swift-commerce-wishlist-preview-state {
    display: flex;
    min-width: min(100%, 320px);
    flex-direction: column;
    align-items: center;
    gap: var(--swift-commerce-space-2);
}

.swift-commerce-wishlist-preview-label {
    color: var(--swift-commerce-color-text-muted);
    font-size: var(--swift-commerce-text-xs);
    font-weight: var(--swift-commerce-font-medium);
}

.swift-commerce-wishlist-preview-state .swift-commerce-wishlist-button-wrapper {
    margin: 0;
}

.swift-commerce-wishlist-loop-products {
    display: grid;
    width: min(100%, 680px);
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--swift-commerce-space-5);
    list-style: none;
}

.swift-commerce-wishlist-loop-product {
    position: relative;
    min-width: 0;
    margin: 0;
    padding: 0 0 var(--swift-commerce-space-4);
    border: 1px solid var(--swift-commerce-color-border);
    border-radius: var(--swift-commerce-radius-lg);
    background: var(--swift-commerce-color-surface);
}

.swift-commerce-wishlist-loop-product .woocommerce-LoopProduct-link {
    display: grid;
    gap: var(--swift-commerce-space-2);
    color: var(--swift-commerce-color-text);
    text-decoration: none;
}

.swift-commerce-wishlist-loop-product .attachment-woocommerce_thumbnail {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    border-radius: var(--swift-commerce-radius-lg) var(--swift-commerce-radius-lg) 0 0;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.swift-commerce-wishlist-loop-product .woocommerce-loop-product__title,
.swift-commerce-wishlist-loop-product .price {
    margin: 0;
    padding-inline: var(--swift-commerce-space-4);
}

.swift-commerce-wishlist-loop-product .woocommerce-loop-product__title {
    color: var(--swift-commerce-color-text);
    font-size: var(--swift-commerce-text-base);
    font-weight: var(--swift-commerce-font-semibold);
    line-height: var(--swift-commerce-leading-tight);
}

.swift-commerce-wishlist-loop-product .price {
    color: var(--swift-commerce-color-primary);
    font-size: var(--swift-commerce-text-sm);
    font-weight: var(--swift-commerce-font-semibold);
}

.swift-commerce-wishlist-loop-product > .add_to_cart_button {
    display: inline-flex;
    width: calc(100% - (2 * var(--swift-commerce-space-4)));
    min-height: var(--swift-commerce-control-height);
    align-items: center;
    justify-content: center;
    margin: var(--swift-commerce-space-3) var(--swift-commerce-space-4) 0;
    padding: 0 var(--swift-commerce-space-4);
    border: 1px solid var(--swift-commerce-color-border);
    border-radius: var(--swift-commerce-radius-md);
    background: var(--swift-commerce-color-surface-subtle);
    color: var(--swift-commerce-color-text);
    font-size: var(--swift-commerce-text-sm);
    font-weight: var(--swift-commerce-font-medium);
    text-decoration: none;
}

.swift-commerce-wishlist-toast-preview {
    position: relative;
    align-items: flex-end;
    justify-content: flex-end;
}

.swift-commerce-wishlist-toast-preview[data-position^="top-"] {
    align-items: flex-start;
}

.swift-commerce-wishlist-toast-preview[data-position$="-left"] {
    justify-content: flex-start;
}

.swift-commerce-wishlist-toast-preview[data-position$="-center"] {
    justify-content: center;
}

.swift-commerce-wishlist-toast-preview .swift-commerce-wishlist-toast {
    position: static;
    margin: 0;
}

.swift-commerce-wishlist-table {
    table-layout: auto;
}

.swift-commerce-wishlist-table .product-remove {
    width: 44px;
}

.swift-commerce-wishlist-table .product-thumbnail {
    width: 76px;
}

.swift-commerce-wishlist-table .product-thumbnail img,
.swift-commerce-wishlist-product-image img {
    display: block;
    width: var(--swift-commerce-wishlist-image-size, 60px);
    height: var(--swift-commerce-wishlist-image-size, 60px);
    border-radius: var(--swift-commerce-radius-md);
    object-fit: cover;
}

.swift-commerce-wishlist-table .product-name a,
.swift-commerce-wishlist-product-name a {
    color: var(--swift-commerce-color-text);
    font-weight: var(--swift-commerce-font-semibold);
    text-decoration: none;
}

.swift-commerce-wishlist-table .product-name a:hover,
.swift-commerce-wishlist-product-name a:hover {
    color: var(--swift-commerce-color-primary);
}

.swift-commerce-wishlist-table .date-added,
.swift-commerce-wishlist-date-added {
    display: block;
    margin-top: var(--swift-commerce-space-1);
    color: var(--swift-commerce-color-text-muted);
    font-size: var(--swift-commerce-text-xs);
}

.swift-commerce-wishlist-stock,
.swift-commerce-wishlist-table .product-stock > span {
    display: inline-flex;
    padding: 3px 8px;
    border-radius: var(--swift-commerce-radius-pill);
    font-size: var(--swift-commerce-text-xs);
    font-weight: var(--swift-commerce-font-semibold);
}

.swift-commerce-wishlist-stock.in-stock,
.swift-commerce-wishlist-table .product-stock .in-stock {
    background: var(--swift-commerce-color-success-surface);
    color: var(--swift-commerce-color-success);
}

.swift-commerce-wishlist-stock.out-of-stock,
.swift-commerce-wishlist-table .product-stock .out-of-stock {
    background: var(--swift-commerce-color-danger-surface);
    color: var(--swift-commerce-color-danger);
}

.swift-commerce-wishlist-product-price,
.swift-commerce-wishlist-table .product-price {
    color: var(--swift-commerce-color-primary);
    font-weight: var(--swift-commerce-font-semibold);
}

.swift-commerce-ui .swift-commerce-wishlist-add-to-cart {
    border-color: var(--swift-commerce-wishlist-cart-bg, var(--swift-commerce-color-primary));
    background: var(--swift-commerce-wishlist-cart-bg, var(--swift-commerce-color-primary));
    color: var(--swift-commerce-wishlist-cart-color, var(--swift-commerce-color-on-primary));
}

.swift-commerce-ui .swift-commerce-wishlist-remove {
    display: inline-flex;
    width: 40px;
    min-width: 40px;
    height: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: var(--swift-commerce-radius-md);
    background: transparent;
    color: var(--swift-commerce-wishlist-remove-color, var(--swift-commerce-color-danger));
    line-height: 1;
}

.swift-commerce-ui .swift-commerce-wishlist-remove svg {
    display: block;
    width: 20px;
    min-width: 20px;
    height: 20px;
    min-height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.swift-commerce-ui .swift-commerce-wishlist-remove:hover {
    background: var(--swift-commerce-color-danger-surface);
    color: var(--swift-commerce-color-danger);
}

.swift-commerce-ui .swift-commerce-wishlist-remove:focus-visible {
    outline: var(--swift-commerce-focus-width) solid var(--swift-commerce-color-focus);
    outline-offset: 2px;
}

.swift-commerce-wishlist-actions {
    justify-content: flex-end;
    margin-top: var(--swift-commerce-space-4);
}

.swift-commerce-wishlist-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--swift-commerce-space-3);
    margin-top: var(--swift-commerce-space-5);
}

.swift-commerce-wishlist-share {
    margin-top: var(--swift-commerce-space-6);
    padding-top: var(--swift-commerce-space-5);
    border-top: 1px solid var(--swift-commerce-color-border);
}

.swift-commerce-wishlist-share h4 {
    margin: 0 0 var(--swift-commerce-space-3);
    color: var(--swift-commerce-color-text);
}

.swift-commerce-wishlist-share-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: var(--swift-commerce-space-2);
}

.swift-commerce-wishlist-share-buttons :is(a, button) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--swift-commerce-color-border);
    border-radius: var(--swift-commerce-radius-pill);
    background: var(--swift-commerce-color-surface);
    color: var(--swift-commerce-color-text-muted);
    transition: border-color var(--swift-commerce-duration-fast), color var(--swift-commerce-duration-fast),
        transform var(--swift-commerce-duration-fast);
}

.swift-commerce-wishlist-share-buttons :is(a, button):hover {
    border-color: var(--swift-commerce-color-primary);
    color: var(--swift-commerce-color-primary);
    transform: translateY(-1px);
}

/* Dashboard-selected wishlist page layouts use the same storefront markup. */
.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table,
.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tbody,
.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tr,
.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table td {
    display: block;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table thead {
    display: none;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tbody {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--swift-commerce-space-4);
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tr {
    position: relative;
    overflow: hidden;
    padding: var(--swift-commerce-space-4);
    border: 1px solid var(--swift-commerce-wishlist-page-border, var(--swift-commerce-color-border));
    border-radius: var(--swift-commerce-radius-lg);
    background: var(--swift-commerce-color-surface);
    box-shadow: var(--swift-commerce-shadow-xs);
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table td {
    padding: var(--swift-commerce-space-2) 0;
    border: 0;
    text-align: left;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table .product-remove {
    position: absolute;
    top: var(--swift-commerce-space-2);
    right: var(--swift-commerce-space-2);
    z-index: 1;
    width: auto;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table .product-thumbnail img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table .product-thumbnail {
    width: 100%;
}

.swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table .product-add-to-cart .swift-commerce-button {
    width: 100%;
}

.swift-commerce-wishlist-page--minimal-list .swift-commerce-wishlist-table thead {
    display: none;
}

.swift-commerce-wishlist-page--minimal-list .swift-commerce-wishlist-table tr {
    display: flex;
    align-items: center;
    gap: var(--swift-commerce-space-3);
    border-bottom: 1px solid var(--swift-commerce-wishlist-page-border, var(--swift-commerce-color-border));
}

.swift-commerce-wishlist-page--minimal-list .swift-commerce-wishlist-table td {
    padding: var(--swift-commerce-space-3) 0;
    border: 0;
}

.swift-commerce-wishlist-page--minimal-list .swift-commerce-wishlist-table .product-name {
    min-width: 120px;
    flex: 1 1 auto;
}

.swift-commerce-wishlist-page--minimal-list .swift-commerce-wishlist-table :is(
    .product-remove,
    .product-thumbnail,
    .product-price,
    .product-stock,
    .product-add-to-cart
) {
    flex: 0 0 auto;
}

/* Elementor compositions share the storefront product primitives. */
.swift-commerce-wishlist-grid {
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(var(--swift-commerce-wishlist-columns, 3), minmax(0, 1fr));
    gap: var(--swift-commerce-space-4);
}

.swift-commerce-wishlist-grid-item {
    position: relative;
    min-width: 0;
    overflow: hidden;
    padding: var(--swift-commerce-space-4);
    border: 1px solid var(--swift-commerce-color-border);
    border-radius: var(--swift-commerce-radius-lg);
    background: var(--swift-commerce-color-surface);
}

.swift-commerce-wishlist-grid-remove {
    position: absolute;
    top: var(--swift-commerce-space-2);
    right: var(--swift-commerce-space-2);
    z-index: 1;
}

.swift-commerce-wishlist-grid .swift-commerce-wishlist-product-image img {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
}

.swift-commerce-wishlist-grid-content {
    display: grid;
    min-width: 0;
    gap: var(--swift-commerce-space-2);
    padding-top: var(--swift-commerce-space-3);
}

.swift-commerce-wishlist-grid-cart .swift-commerce-button {
    width: 100%;
}

.swift-commerce-wishlist-list {
    display: grid;
    gap: var(--swift-commerce-space-2);
}

.swift-commerce-wishlist-list-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--swift-commerce-space-4);
    padding: var(--swift-commerce-space-3);
    border-bottom: 1px solid var(--swift-commerce-color-border);
}

.swift-commerce-wishlist-list-content {
    min-width: 0;
}

.swift-commerce-wishlist-list-actions {
    display: flex;
    align-items: center;
    gap: var(--swift-commerce-space-2);
}

@media (max-width: 767px) {
    .swift-commerce-wishlist-loop-products {
        grid-template-columns: 1fr;
    }

    .swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tbody {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .swift-commerce-wishlist-table thead {
        display: none;
    }

    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table,
    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table tbody,
    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table tr,
    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table td {
        display: block;
    }

    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table tr {
        position: relative;
        padding: var(--swift-commerce-space-4) 0;
        border-bottom: 1px solid var(--swift-commerce-color-border);
    }

    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table td {
        padding: var(--swift-commerce-space-1) 0;
        border: 0;
    }

    .swift-commerce-wishlist-page:not(.swift-commerce-wishlist-page--modern-cards) .swift-commerce-wishlist-table .product-remove {
        position: absolute;
        top: var(--swift-commerce-space-3);
        right: 0;
        width: auto;
    }

    .swift-commerce-wishlist-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .swift-commerce-wishlist-list-item {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .swift-commerce-wishlist-list-actions {
        grid-column: 1 / -1;
    }
}

@media (max-width: 480px) {
    .swift-commerce-wishlist-page--modern-cards .swift-commerce-wishlist-table tbody {
        grid-template-columns: 1fr;
    }

    .swift-commerce-wishlist-grid {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .swift-commerce-wishlist-button,
    .swift-commerce-wishlist-loop,
    .swift-commerce-wishlist-toast,
    .swift-commerce-wishlist-share-buttons :is(a, button) {
        transition: none;
    }
}
