/**
 * cart.css — Дополнительные стили корзины
 *
 * Основные стили cart-item внутри modal.css.
 * Здесь — toast-уведомления и анимации.
 */


/* ===================================================
   TOAST NOTIFICATION (всплывающее уведомление)
   =================================================== */

.toast {
    position: fixed;
    bottom: var(--gap-xl);
    left: 50%;
    transform: translateX(-50%) translateY(100px);
    padding: 12px 24px;
    background: var(--c-dark);
    color: var(--c-white);
    font-size: var(--fs-sm);
    font-weight: 500;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-toast);
    opacity: 0;
    pointer-events: none;
    transition: all var(--transition);
    display: flex;
    align-items: center;
    gap: var(--gap-sm);
    max-width: 90vw;
}

.toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

.toast--success {
    background: var(--c-success);
}

.toast--error {
    background: var(--c-danger);
}

.toast__icon {
    flex-shrink: 0;
}


/* ===================================================
   CART ITEM ANIMATION
   =================================================== */

.cart-item {
    animation: cartItemIn 0.3s ease forwards;
}

@keyframes cartItemIn {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.cart-item.is-removing {
    animation: cartItemOut 0.3s ease forwards;
}

@keyframes cartItemOut {
    from {
        opacity: 1;
        transform: translateX(0);
        max-height: 200px;
    }
    to {
        opacity: 0;
        transform: translateX(30px);
        max-height: 0;
        padding: 0;
        margin: 0;
        overflow: hidden;
    }
}


/* ===================================================
   CART BADGE PULSE (анимация при добавлении)
   =================================================== */

.header__cart-badge.is-pulse {
    animation: badgePulse 0.4s ease;
}

@keyframes badgePulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.4); }
    100% { transform: scale(1); }
}