﻿.cart-item-card-component {
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 16px;
    padding: 16px;
    background-color: var(--color-light-background);
    box-sizing: border-box;
    box-shadow: var(--shadow-small);
    border: var(--border-outline);
    border-radius: 8px;
    transition-property: color, border, background-color, box-shadow;
    transition-timing-function: var(--transition-timing-function);
    transition-duration: var(--transition-duration);
}

.cart-item-card-component:hover {
    color: var(--color-text-accent);
    border: var(--border-outline-highlight);
    box-shadow: var(--shadow-highlight);
    background-color: var(--color-highlight);
}

.cart-item-card-component.warning {
    border: var(--border-outline-warning);
    box-shadow: var(--shadow-warning);
}

.cart-item-card-component.warning:hover {
    background-color: var(--color-warning);
    box-shadow: var(--shadow-warning);
}

.cart-item-card-component.warning:hover .warning {
    color: var(--color-text-accent);
}

.cart-item-card-component.error {
    border: var(--border-outline-error);
    box-shadow: var(--shadow-error);
}

.cart-item-card-component.error:hover {
    background-color: var(--color-error);
    box-shadow: var(--shadow-error);
}

.cart-item-card-component.error:hover .error {
    color: var(--color-text-accent);
}

.cart-item-card-component-image {
    display: none;
    object-fit: contain;
    height: 144px;
}

.cart-item-card-component-middle {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    flex-grow: 1;
    gap: 16px;
}

.cart-item-card-component-options {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    flex-grow: 1;
    gap: 8px;
}

.cart-item-card-component-option {
    display: flex;
    flex-direction: row;
    gap: 8px;
}

.cart-item-card-component-right {
    display: flex;
    flex-direction: row;
    flex-shrink: 1;
    flex-grow: 0;
    gap: 32px;
    align-items: end;
}

.cart-item-card-component-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: end;
}

@media (min-width: 710px) {
    .cart-item-card-component {
        flex-direction: row;
    }
    
    .cart-item-card-component-image {
        display: flex;
    }

    .cart-item-card-component-right {
        flex-direction: column;
        gap: 8px;
    }
}