/* ==========================================================================
   SKYFALL - FIXED CART ICON
   Matches footer social icon style exactly (.sf-footer-social-link)
   ========================================================================== */

.sf-fixed-cart {
    position: fixed;
    bottom: 32px; /* Default, overridden by inline style */
    right: 2rem;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    /* Match footer social icon size: 2.5rem */
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    /* Match footer social: rgba(249, 115, 22, 0.3) - orange-500 */
    border: 1px solid rgba(249, 115, 22, 0.3);
    /* Match footer social: rgba(249, 115, 22, 0.1) */
    background: rgba(249, 115, 22, 0.1);
    /* Match footer social color */
    color: #f97316;
    transition: all 0.3s ease;
}

/* Left position */
.sf-fixed-cart--left {
    left: 2rem;
    right: auto;
}

.sf-fixed-cart:hover {
    /* Match footer social hover */
    border-color: #f97316;
    background: rgba(249, 115, 22, 0.2);
}

.sf-fixed-cart-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sf-fixed-cart-icon svg {
    width: 18px;
    height: 18px;
}

/* Cart Count Badge */
.sf-fixed-cart-count {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #EA580C 0%, #c2410c 100%);
    border: 2px solid #0a0a0a;
    border-radius: 9999px;
    font-size: 0.625rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    animation: sf-cart-pulse 0.3s ease;
}

@keyframes sf-cart-pulse {
    0% {
        transform: scale(0.8);
        opacity: 0;
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .sf-fixed-cart {
        width: 2.25rem;
        height: 2.25rem;
    }

    .sf-fixed-cart--right {
        right: 1.5rem;
    }

    .sf-fixed-cart--left {
        left: 1.5rem;
    }

    .sf-fixed-cart-icon svg {
        width: 16px;
        height: 16px;
    }

    .sf-fixed-cart-count {
        min-width: 16px;
        height: 16px;
        font-size: 0.5625rem;
        top: -5px;
        right: -5px;
    }
}
