/**
 * Featured Products Widget Styles
 */

/* Hide scrollbar */
.featured-products-container::-webkit-scrollbar {
    display: none;
}

.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Product card transitions */
.featured-product-item {
    transition: transform 0.5s ease;
}

.featured-product-item:hover {
    transform: scale(1.05);
}

/* Line clamp for product names */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Aspect ratio for product images */
.aspect-square {
    aspect-ratio: 1 / 1;
}

/* Navigation buttons */
.featured-products-nav-left,
.featured-products-nav-right {
    cursor: pointer;
    border: none;
}

.featured-products-nav-left:hover,
.featured-products-nav-right:hover {
    transform: scale(1.1);
}

/* Responsive */
@media (max-width: 1024px) {
    .featured-products-header {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }

    .featured-products-container {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }

    .featured-product-item {
        width: 250px !important;
    }
}

@media (min-width: 1024px) {
    .featured-products-header {
        padding-left: 8rem !important;
        padding-right: 8rem !important;
    }

    .featured-products-container {
        padding-left: 8rem !important;
        padding-right: 8rem !important;
    }

    .featured-product-item {
        width: 350px !important;
    }
}

/* Smooth scroll */
.scroll-smooth {
    scroll-behavior: smooth;
}

/* Text utilities */
.font-black {
    font-weight: 900;
}

.font-bold {
    font-weight: 700;
}

.font-semibold {
    font-weight: 600;
}

.text-gray-700 {
    color: #374151;
}

.text-red-500 {
    color: #ef4444;
}

/* Flexbox utilities */
.flex {
    display: flex;
}

.items-center {
    align-items: center;
}

.justify-center {
    justify-content: center;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-6 {
    gap: 1.5rem;
}

/* Spacing utilities */
.mb-2 {
    margin-bottom: 0.5rem;
}

.mb-4 {
    margin-bottom: 1rem;
}

.mb-8 {
    margin-bottom: 2rem;
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.p-3 {
    padding: 0.75rem;
}

/* Other utilities */
.bg-white {
    background-color: #ffffff;
}

.rounded-full {
    border-radius: 9999px;
}

.rounded-2xl {
    border-radius: 1rem;
}

.shadow-lg {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.overflow-hidden {
    overflow: hidden;
}

.overflow-x-auto {
    overflow-x: auto;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.shrink-0 {
    flex-shrink: 0;
}

.z-20 {
    z-index: 20;
}

.cursor-pointer {
    cursor: pointer;
}

.text-center {
    text-align: center;
}

.line-through {
    text-decoration: line-through;
}

.object-contain {
    object-fit: contain;
}

.duration-200 {
    transition-duration: 200ms;
}

.duration-500 {
    transition-duration: 500ms;
}

.transition-all {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.transition-transform {
    transition-property: transform;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.origin-center {
    transform-origin: center;
}
