:root {
    --collection-item-border-color: var(--product-thumbnail-border-color, var(--default-border-color));
    --collection-item-border-color-active: var(--product-thumbnail-border-color-hover, var(--default-border-color-active));
    --collection-item-title-color: var(--product-thumbnail-title-color, var(--text-default-color));
}

.collection-item {
    display: flex;
    justify-content: space-between;
    flex-flow: column nowrap;
    border: 1px solid var(--collection-item-border-color);
    border-radius: var(--default-border-radius);
    background-color: var(--default-background-color);
    padding: var(--default-space-between);
    color: inherit;
    transition: all 0.15s ease-in-out;
}
.collection-item:focus {
    border-color: var(--collection-item-border-color-active);
    color: inherit;
}
@media (hover: hover) and (pointer: fine) {
    .collection-item:hover {
        border-color: var(--collection-item-border-color-active);
        color: inherit;
    }
}
.collection-item-title {
    font-weight: 600;
    color: var(--collection-item-title-color);
}
.collection-item-image {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
}
.collection-item-image img {
    max-width: 100%;
    max-height: 15vh;
    object-fit: contain;
}
.collection-item-image-placeholder {
    color: #f8f8f8;
    font-size: 48px;
}

@container style(--full-bleed-images: 1) {
    .collection-item-image:has(img) {
        flex-grow: 1;
        height: auto;
        margin-top: calc(-1 * var(--default-space-between));
        margin-left: calc(-1 * var(--default-space-between));
        margin-right: calc(-1 * var(--default-space-between));
        margin-bottom: var(--default-space-between);
        border-top-left-radius: var(--default-border-radius);
        border-top-right-radius: var(--default-border-radius);
    }

    .collection-item-image img {
        max-height: none;
        border-top-left-radius: var(--default-border-radius);
        border-top-right-radius: var(--default-border-radius);
    }
}
