.container-custom {
    max-width: 1300px;
    margin: auto;
}

/* Sticky Header with Gradient Animation */
.main-header {
    background: linear-gradient(270deg, #0d47a1, #1565c0, #1976d2, #0288d1, #00acc1, #0d47a1);
    background-size: 1200% 1200%;
    border-bottom: 1px solid #e5e5e5;
    position: sticky;
    top: 0;
    z-index: 1020;
    transition: all 0.3s ease;
    animation: gradientShift 20s ease infinite;
    color: #fff; /* white text */
}

/* Shadow effect on scroll */
.main-header.scrolled {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    background: #1565c0; /* solid fallback color */
    animation: none; /* stop animation */
    color: #fff;
}

/* Gradient animation keyframes */
@keyframes gradientShift {
    0%   { background-position: 0% 50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Logo adjustments */
.navbar-brand img {
    height: 60px;      /* increased size */
    margin: 0 8px;     /* reduced margin */
    display: block;
    filter: none;
}

/* Search box */
.search-box {
    width: 400px;
}
.search-box .form-control {
    border-radius: 6px 0 0 6px;
}
.search-box .btn {
    border-radius: 0 6px 6px 0;
    background-color: #ffd54f; /* bright yellow */
    color: #0d47a1;           /* dark blue */
    border: none;
    transition: background-color 0.3s ease, color 0.3s ease;
}
.search-box .btn:hover,
.search-box .btn:focus {
    background-color: #fbc02d; /* darker yellow */
    color: #000;
    outline: none;
    box-shadow: none;
}

/* Nav links */
.nav-link {
    padding: 8px 12px;
    color: rgba(255, 255, 255, 0.9);
    font-weight: 500;
    transition: color 0.4s ease;
    text-shadow: none;
}
.nav-link:hover,
.nav-link.active {
    color: #ffd54f; /* bright yellow accent */
    text-shadow: none;
}

/* User initial circle */
.user-initial-circle {
    background: #0d47a1; /* deep blue */
    color: #ffd54f;      /* bright yellow */
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    box-shadow: none;
}

/* Category bar styling */
.category-bar {
    background: linear-gradient(
        90deg,
        #ff6b6b,  /* soft red */
        #fbc531,  /* warm yellow */
        #4cd137,  /* fresh green */
        #00a8ff   /* bright blue */
    );
    border-bottom: 1px solid #ddd;
    position: sticky;
    top: 72px; /* height of main header */
    z-index: 1019;
}

/* Category list */
.category-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 34px;
    padding: 6px 0;
    gap: 20px;
    max-width: 1300px;
    margin: auto;
}

/* Category links */
.category-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #fff;
    font-size: 14px;
    gap: 8px;
    white-space: nowrap;
    font-weight: 500;
    position: relative;
    transition: color 0.4s ease;
}
.category-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0%;
    height: 2px;
    background: linear-gradient(90deg, #ffca28, #fdd835, #ffca28);
    transition: width 0.4s ease;
}
.category-link:hover {
    color: #ffd54f;
}
.category-link:hover::after {
    width: 100%;
}
.category-link i {
    font-size: 18px;
    transition: none;
}

/* Responsive styles */
@media (max-width: 992px) {
    .search-box {
        display: none !important;
    }
    .container-custom {
        padding: 0 10px;
    }
    .category-list {
        gap: 10px;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none;  /* IE and Edge */
    }
    .category-list::-webkit-scrollbar {
        display: none; /* Chrome, Safari */
    }
    .category-link {
        font-size: 0;     /* hide text */
        gap: 0;
        padding: 0 8px;   /* horizontal padding */
    }
    .category-link i {
        font-size: 18px !important;
        color: #fff;
    }
    .category-link::after {
        display: none;
    }
}
/* Fade-in animation for smooth entry */
@keyframes fadeInUp {
    0% { opacity: 0; transform: translateY(15px); }
    100% { opacity: 1; transform: translateY(0); }
}
.fade-in {
    animation: fadeInUp 0.6s ease forwards;
}

/* Mobile-friendly horizontal scroll padding */
@media (max-width: 992px) {
    .category-list {
        padding: 6px 12px; /* thumb swipe ke liye thoda gap */
    }
}

/* Mobile Bottom Navigation (App-like) */
.bottom-nav {
    display: none;
}
@media (max-width: 768px) {
    .bottom-nav {
        display: flex;
        justify-content: space-around;
        align-items: center;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #fff;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.1);
        padding: 8px 0;
        z-index: 1050;
    }
    .bottom-nav a {
        text-decoration: none;
        color: #555;
        font-size: 12px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
        transition: color 0.3s ease;
    }
    .bottom-nav a i {
        font-size: 20px;
    }
    .bottom-nav a.active,
    .bottom-nav a:hover {
        color: #1565c0;
    }
}

/* Card animation for mobile */
@media (max-width: 768px) {
    .deal-card {
        transition: transform 0.2s ease, box-shadow 0.2s ease;
    }
    .deal-card:active {
        transform: scale(0.96);
        box-shadow: 0 2px 12px rgba(0,0,0,0.1);
    }
}
