/* Add to Cart Button Animation */
.elite-add-to-cart {
    position: relative;
    overflow: hidden;
    transition: all 0.5s ease;
}

.elite-add-to-cart.loading {
    pointer-events: none;
}

.elite-add-to-cart.loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    border: 2px solid transparent;
    border-top: 2px solid white;
    border-radius: 50%;
    animation: elite-loading-spin 0.8s linear infinite;
}

.elite-add-to-cart.success {
    background: linear-gradient(135deg, rgb(42, 157, 143) 0%, rgb(42, 157, 143) 100%) !important;
}

.elite-add-to-cart.success::before {
    content: "✓ Added";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-weight: 600;
}






/* Main Product Add to Cart Button Animation */
.prod-details-add-to-cart {
    position: relative;
    overflow: hidden;
    transition: background-color 0.5s ease;
    /* No extra width/height - keep original styles */
}

.prod-details-add-to-cart.loading {
    pointer-events: none;
}

.prod-details-add-to-cart.loading::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    border: 2px solid transparent;
    border-top: 2px solid white;
    border-radius: 50%;
    animation: elite-loading-spin 0.8s linear infinite;
}

.prod-details-add-to-cart.success {
    background: linear-gradient(135deg, rgb(42, 157, 143) 0%, rgb(42, 157, 143) 100%) !important;
}

.prod-details-add-to-cart.success::before {
    content: "✓ Added";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-weight: 600;
}

@keyframes elite-loading-spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.elite-banner-title{
    width: max-content;
}


@media (max-width: 768px){
    .elite-banner-title{
        width: fit-content !important;
    }
}

/* Out of Stock Status Styles */
.prod-details-outofstock-status {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    font-weight: 600;
    font-size: 1.1rem;
    color: #e74c3c; /* Red color for out of stock */
}

.prod-details-outofstock-icon {
    margin-right: 10px;
    font-size: 1.5rem;
    color: #e74c3c;
}

.prod-details-outofstock-text {
    color: #e74c3c;
    font-weight: 600;
}