
body {
    font-family: 'Poppins', sans-serif;
    
    background:#f5f5f5;
    color: #000;
}

a {
    color: purple;
    text-decoration: none;
}

a:hover {
    color: darkmagenta;
}

.btn-pink {
    background-color: rgb(233, 106, 174);
    color: white;
    border-radius: 30px;
    padding: 8px 20px;
    border: none;
    transition: background-color 0.3s ease;
}

.btn-pink:hover {
    background-color: deeppink;
}

.text-purple {
    color: purple;
}
.first{
    width: 150px;
    height: 290px;            
    float: left;
    border: 2px solid black;
}
.category-slider-img{
    width: 100%;
    height: 350px;
    object-fit: cover;
    object-position: 50% 20%;
    border-radius: 10px;
}

footer {
    background-color: purple;
    padding: 40px 0;
    text-align: center;
    color: #f4eeee;
    font-size: 14px;
    border-top: 1px solid #eee;
}

footer a {
    color: purple;
    font-weight: 500;
}

        footer a:hover {
            color: deeppink;
        }
        .bi1 {
            color: rgb(244, 241, 239)
        }
   
    /* Mega Dropdown Styling */
    .categories {
        position: relative;
    }

    .mega-menu {
        display: none;
        position: absolute;
        left: 0;
        top: 100%;
        width: 100vw;
        background-color: #fff;
        border-top: 1px solid #eee;
        border-radius: 0 0 10px 10px;
        z-index: 9999;
    }

    .categories:hover .mega-menu {
        display: block;
    }

    .mega-menu a {
        display: block;
        color: #333;
        text-decoration: none;
        font-size: 14px;
        margin: 4px 0;
        transition: color 0.2s ease;
    }

    .mega-menu a:hover {
        color: deeppink;
    }

    /* Header Styles */
    .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 15px 40px;
        border-bottom: 1px solid #eee;
        position: sticky;
        top: 0;
        background: white;
        z-index: 999;
    }
    
    @media (max-width: 991px) {
        .nav-item.dropdown.position-static .dropdown-menu {
            position: static !important;
            width: 100% !important;
            display: none;
        }

        .nav-item.dropdown.position-static.show .dropdown-menu {
            display: block;
        }
    }
    

    @keyframes fadeDown {
        from { opacity: 0; transform: translateY(-10px); }
        to   { opacity: 1; transform: translateY(0); }
    }


    .logo {
        font-size: 28px;
        font-weight: bold;
        color: #d63384;
        text-transform: uppercase;
    }
    #searchResults {
    max-height: 400px;
    overflow-y: auto;
    transition: all 0.3s ease;
    }

    #searchResults::-webkit-scrollbar {
        width: 6px;
    }
    #searchResults::-webkit-scrollbar-thumb {
        background-color: #d63384;
        border-radius: 10px;
    }

    .hover-effect {
        transition: all 0.2s ease-in-out;
        background-color: #fff;
    }
    .hover-effect:hover {
        transform: scale(1.05);
        background-color: #fdf2f8;
        border-color: #d63384 !important;
    }
    .text-pink {
        color: #d63384;
    }

    /* Search bar */
    .search-bar {
        position: relative;
        width: 60%;
       
        }
    .product-title{
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    line-height:1.3;
    height:42px;
}
       
    

    .search-bar button {
        position: absolute;
        right: 10px;
        top: 10px;
        border: none;
        background-color:deeppink;
        color: white;
        border-radius: 50%;
        width: 35px;
        height: 35px;
        transition: background-color 0.3s ease;
    }

    .search-bar button:hover {
        background-color: #b42a6c;
        width: 45px;
        height: 45px;
        top: 0;
        right: 0px;
        border-bottom-left-radius: 0%;
        border-top-left-radius: 0%;
    }
        .search-bar input {      
        touch-action: manipulation;
    }
        .hover-bg-light:hover {
        background-color:lightpink;
        cursor: pointer;
    }

        /* Categories dropdown */
        .categories {
            position: relative;
            font-weight: 500;
            cursor: pointer;
        }

        .categories:hover .dropdown-menu {
            display: block;
        }

        .dropdown-menu {
            display: none;
            position: absolute;
            background: white;
            box-shadow: 0 4px 10px rgba(0,0,0,0.1);
            padding: 15px;
            border-radius: 8px;
            top: 40px;
            z-index: 1000;
            min-width: 220px;
        }

        .dropdown-menu h6 {
            font-size: 14px;
            margin-bottom: 10px;
            color: purple;
            border-bottom: 1px solid #eee;
            padding-bottom: 5px;
        }

        .dropdown-menu a {
            display: block;
            color: #000;
            text-decoration: none;
            padding: 5px 0;
        }

        .dropdown-menu a:hover {
            color: darkmagenta;
        }

    /* Cart */
        .cart-page .card-body {
            height: auto !important;
            overflow: visible !important;
        }
        .cart {
            position: relative;
            font-size: 20px;
            cursor: pointer;
            padding-right: 10px;
            border-radius:20px;
            font-weight:600;
            transition:.25s;
            
        }
        /* .cart:hover {
            color: white;
            background-color: rgb(141, 131, 137);
            transform:translateY(-4px);
            box-shadow:0 10px 25px rgba(0,0,0,.15);
        } */

        /* .cart-count {
            position: absolute;
            top: -6px;
            right: 18px;
            background: #250f70;
            color: #fff;
            font-size: 11px;
            padding: 2px 6px;
            border-radius: 50%;
        } */
         .mobile-cart-count {
            position: absolute;
            top: -6px;
            right: -8px;
            background: red;
            color: #fff;
            font-size: 11px;
            padding: 2px 6px;
            border-radius: 50%;
        }
        .cart-dropdown {
            position: absolute;
            right: 0;
            top: 100%;
            background: #fff;
            width: 300px;
            box-shadow: 0 4px 10px rgba(0,0,0,0.1);
            border-radius: 8px;
            display: none;
            z-index: 1000;
        }


        /* Hero Section */
        .hero {
            background: linear-gradient(90deg, #f8f0ff, #fff);
            padding: 80px 40px;
            text-align: center;
        }

        .hero h1 {
            color: purple;
            font-size: 48px;
            font-weight: 700;
        }

        .hero p {
            color: #555;
            font-size: 18px;
            margin-top: 10px;
        }

        .hero .btn-pink {
            margin-top: 25px;
            font-size: 18px;
            padding: 10px 30px;
        }    
        .top-header {
            background-color: purple;
            color: white;
            font-weight: 500;        
        }
        /* product page */
        .text-purple { color: #6f42c1; }
        .text-pink { color: #d63384; }
        .btn-pink { background-color: #d63384; border: none; }
        .btn-pink:hover { background-color: #b42a6c; }

        .subcat-link:hover {
            background-color: #d63384 !important;
            color: #fff !important;
        }
        .hover-shadow:hover {
        transform: scale(1.03);
        transition: all 0.3s ease;
        box-shadow: 0 4px 15px rgba(0,0,0,0.2);
        }       
        .category-card {
            text-align: center;
            border: none;
            transition: transform 0.3s ease, box-shadow 0.3s ease;       
            
        }
        .category-card:hover {
            transform: translateY(-5px);
            background-color: #d097b2;
        }
        .subcategory-card:hover {
            background-color: #d63384 !important;
        }
      
        .product-card .card-body {
            height: 240px;
            overflow: hidden;
            text-align: center;
        }
        .product-card img{
            height:220px;
            object-fit:cover;
        }
        .product-wrapper{
            position:relative;
        }
        .product-skeleton{
            border-radius:18px;
            overflow:hidden;
            background:#fff;
            box-shadow:0 .125rem .5rem rgba(0,0,0,.08);
        }
        .skeleton-img{
            height:220px;
            background:#ececec;
            display:flex;
            align-items:center;
            justify-content:center;
        }
        .skeleton-line{
            height:14px;
            border-radius:30px;
            background:#ececec;
        }
        .skeleton-btn{
            height:42px;
            border-radius:10px;
            background:#ececec;
        }

        /* âœ¨ Button hover */
        .btn-pink {
            background-color: #d63384;
            color: #fff;
            transition: all 0.3s ease;
        }

        .btn-pink:hover {
            background-color: #b52a6a;
            transform: scale(1.05);
        }
        .carousel-indicators [data-bs-target] {
            width: 28px;
            height: 8px;
            border-radius: 10px;
            background-color: #bbb;
        }

        .carousel-indicators .active {
            background-color: #d097b2;
        }
                /* Remove arrows from number input (Chrome, Edge, Safari) */
        input[type=number]::-webkit-outer-spin-button,
        input[type=number]::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }       
      
        .quantity-box {
            gap: 5px;
        }

        .qty-btn {
            width: 28px;
            height: 28px;
            background: #f1f1f1;
            border: 1px solid #ccc;
            cursor: pointer;
            font-size: 18px;
            border-radius: 4px;
            padding: 0;
        }

        .qty-input {
            width: 55px;
            text-align: center;
        }


        .circle-image {
            width: 120px;
            height: 120px;
            border-radius: 50%;
            background: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
            overflow: hidden;
            box-shadow: 0 2px 8px rgba(0,0,0,0.15);
            margin: 0 auto;
        }
        .circle-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 50%;
        }
        .category-link {
            text-decoration: none;
        }
        .category-link h6 {
            font-size: 0.95rem;
            font-weight: 500;
            margin-top: 10px;
        }
        .btn:hover {
        background-color: lightgray !important;
        transform: scale(0.95);
        transition: 0.2s ease-in-out;
        }
        .btn-pink:hover {
            background-color: #b42a6c !important;
            transform: scale(1.05);
            transition: 0.2s ease-in-out;
            color: #fff;
        }
       .thumb-image{
            width:75px;
            height:75px;
            object-fit:cover;
            cursor:pointer;
            border:1px solid #ddd;
        }
        .thumb-image:hover{
            border:2px solid #d63384;
        }
        .thumb-image.active{
            border-color:#d63384;
        }
        .main-product-image {
            width:100%;
            height:100%;
            object-fit:contain;
            cursor:crosshair;
        }
        #zoomResult{

            position:absolute;
            left:105%;
            top:0;
            width:520px;
            height:520px;
            border:1px solid #ddd;
            background-repeat:no-repeat;
            display:none;
            z-index:999;
            background-color:#fff;
            box-shadow:0 5px 25px rgba(0,0,0,.15);
        }
        .zoom-container {
            width:100%;
            height:600px;
            display:flex;
            align-items:center;
            justify-content:center;
            border:1px solid #eee;
            border-radius:12px;
            background:#fff;
        }
        .amazon-image-wrapper{
            position:relative;
            width:100%;
            overflow:visible;
        }

        .zoom-container img {
            transition: transform 0.6s ease;
            transform-origin: center center; /* ensures zoom happens from center */
        }
        .zoom-container:hover img {
            transform: scale(2.5); /* zooms IN (enlarges image) */
        }
        .zoom-container {
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }
        .btn-outline-pink {
            border: 1px solid #d63384;
            background-color: #d63384;
            color: #fff;
            transition: 0.3s;
        }
        .btn-outline-pink:hover {
            background-color: #d63384;
            color: #fff;
            transition: 0.3s;
        }
        .btn-outline-pink {
            border: 1px solid #d63384;
            color: #d63384;
            transition: 0.3s;
        }
        .btn-outline-pink:hover {
            background-color: #d63384;
            color: #fff;
        }
        footer{
            border-start-end-radius: 20px;
                }
            /* ðŸ”§ Fix Bootstrap modal disable issue */
        .modal {
        z-index: 9999 !important;
        }

        .modal-backdrop {
            z-index: 9998 !important;
            background-color: rgba(0,0,0,0.6) !important;
        }

        body.modal-open {
            overflow: auto !important;
            padding-right: 0 !important;
        }

        .modal-dialog {
        pointer-events: auto !important;
        }
        a.fw-bold:hover {
            text-decoration: underline;
        }
        #cartModal .modal-content {
            animation: slideInUp 0.5s ease;
        }
        @keyframes slideInUp {
            from { transform: translateY(50px); opacity: 0; }
            to { transform: translateY(0); opacity: 1; }
        }
        .cart-item {
            border-bottom: 1px solid #eee;
            padding: 12px 0;
        }
        .cart-item img {
            width: 70px;
            height: 70px;
            object-fit: cover;
            border-radius: 10px;
        }
        .cart-item .item-name {
        font-weight: 600;
        }
        .quantity-btn {
            border: none;
            background: #d63384;
            color: white;
            padding: 4px 10px;
            border-radius: 50%;
        }
        .quantity-btn:hover {
            background: #b02a6d;
        }
        .total-price {
            font-size: 18px;
            font-weight: 700;
        }
        #emptyCartDropdown {
        position: absolute;
        top: 100%;
        right: 0;
        margin-top: 8px;
        z-index: 1050;
        animation: fadeIn 0.3s ease-in-out;
        background: #fff;
        }

        @keyframes fadeIn {
        from { opacity: 0; transform: translateY(10px); }
        to { opacity: 1; transform: translateY(0); }
        }
        #totalq{
            position: absolute;
            left: 400px;            
        }
         #totala{
            position: absolute;
            left: 590px; 
                     
        }
        .qty-input{
            width: 70px;
            height: 35px;
            border: 2px solid #000;
        }
                .blink-text {
                    background-color: pink;
                    animation: blink 5.2s infinite;
                    font-weight: bold;
                    color: #d9534f; /* Bootstrap warning red */
                }
                @keyframes blink {
                    0%, 50%, 100% { opacity: 1; }
                    25%, 75% { opacity: 0; }
                }
    #paymentmathod{
        background-color: #d63384;
        color: white;
    }
    /* =========================================================
   MOBILE SEARCH â€“ FINAL FIX (DO NOT DUPLICATE)
   ========================================================= */

@media (max-width: 991px) {

    /* Ensure header stays above page */
    header.navbar {
        position: sticky;
        top: 0;
        z-index: 1040;
    }

    /* Prevent hidden collapse from blocking clicks */
    .navbar-collapse:not(.show) {
        height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    .navbar-collapse.show {
        pointer-events: auto !important;
    }

    /* Mobile search input must always be clickable */
    #mobileSearchInput {
        position: relative;
        z-index: 1060;
        pointer-events: auto !important;
        touch-action: manipulation;
    }

    /* Search suggestions dropdown */
    #mobileSearchResults {
        position: absolute;
        top: 100%;
        left: 0;
        padding: 10px;
        z-index: 1070;
        background: #ece4e4;
        width: 100%;
        max-height: 300px;
        overflow-y: auto;
        box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        border-radius: 12px;
    }

    /* Search wrapper safety */
    .search-bar,
    .mobile-search-full,
    .position-relative {
        z-index: 1055;
    }
}
#miniCart{
    width:320px;
}

@media(max-width:768px){

    #miniCart{
        width:100%;
    }

}
.cart-page table td{
    vertical-align:middle;
}

.cart-page img{
    transition:.3s;
}

.cart-page img:hover{
    transform:scale(1.05);
}

.qty-input{
    background:#fff;
    font-weight:600;
}

.btn-minus,
.btn-plus{
    width:35px;
}

.stock-msg{
    min-height:18px;
    font-size:13px;
}

.remove-item:hover{
    transform:scale(1.05);
}
/* Notification dropdown: fixed width + text wraps inside the box
   instead of overflowing. Scoped to just this dropdown so it
   doesn't affect the mega-menu or profile dropdown items. */
.notification-dropdown {
    width: 280px;
    max-width: 90vw;
    white-space: normal;
    z-index: 99999 !important;
}

.notification-dropdown .dropdown-item {
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
}
#mobileHeroCarousel{
    margin-top:10px;
}

#mobileHeroCarousel img{
    border-radius:12px;
}

#mobileHeroCarousel .carousel-indicators{
    margin-bottom:.5rem;
}

#mobileHeroCarousel .carousel-control-prev-icon,
#mobileHeroCarousel .carousel-control-next-icon{
    background-color:rgba(0,0,0,.4);
    border-radius:50%;
    padding:16px;
}
.skeleton {
    position: relative;
    overflow: hidden;
    background: #ececec;
    border-radius: 8px;
}

.skeleton-image {
    height: 170px;
    background: #f7f7f7;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    overflow: hidden;
}

.skeleton-logo {
    width: 200px;
    max-width: 100%;
    opacity: 1;        /* Watermark effect */
    filter: grayscale(100%);
    user-select: none;
    pointer-events: none;
    z-index: 1;
}

.skeleton::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.65),
        transparent
    );
    animation: shimmer 1.4s infinite;
    z-index: 2;           /* Shimmer passes over the logo */
}

@keyframes shimmer {
    100% {
        left:150%;
        transform: translateX(100%);
        
    }
}

.skeleton-title{
    height:18px;
    width:85%;
}

.skeleton-text{
    height:14px;
    width:65%;
}

.skeleton-price{
    height:22px;
    width:45%;
}

.skeleton-small{
    height:14px;
    width:55%;
}

.skeleton-button{
    height:38px;
    width:100%;
    border-radius:6px;
}
.breadcrumb{
    font-size: 14px;
    margin-bottom: 1.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
    content: ">";
    color: #999;
}

.breadcrumb a {
    color: #666;
    transition: .3s;
}

.breadcrumb a:hover {
    color: #d63384;
}

.breadcrumb-item.active{
    color:#000;
    font-weight:600;
}
   .amazon-image-wrapper{
    position:relative;
    width:520px;
    height:520px;
}

 .main-product-image{

    width:100%;
    height:100%;
    object-fit:contain;

    transition:opacity .25s ease;

    opacity:1;

}

    #lens{
    position:absolute;
    width:150px;
    height:150px;
    border:2px solid #d63384;
    background:rgba(255,255,255,.25);
    display:none;
    pointer-events:none;
    z-index:20;
}
/* Floating zoom window */
#zoomResult{

    position:absolute;

    left:calc(100% + 30px);

    top:0;

    width:520px;

    height:520px;

    background:#fff;

    border:1px solid #ddd;

    box-shadow:0 8px 25px rgba(0,0,0,.15);

    display:none;

    background-repeat:no-repeat;

    z-index:9999;

    border-radius:8px;

}
@media(max-width:991px){

    .amazon-image-wrapper{

        width:100%;
        height:auto;

    }

    .main-product-image{

        height:auto;

    }

    #lens,
    #zoomResult{

        display:none !important;

    }
}

.thumb-image{

    width:70px;
    height:70px;

    object-fit:cover;

    border:2px solid transparent;

    cursor:pointer;

    transition:.25s;

}
.thumb-image:hover{
    border-color:#d63384;
    transform:scale(1.05);
}
.thumb-image.active{
    border-color:#d63384;
}
.bestSellerSlider {
    padding: 10px 5px 40px;
}

.bestSellerSlider .swiper-slide {
    height: auto;
}

.best-card {
    background: #fff;
    border-radius: 12px;
    padding: 10px;
    text-align: center;
    height: 100%;
}

.best-card img {
    width: 100%;
    height: 160px;
    object-fit: contain;
}

.best-card h6 {
    font-size: 14px;
    height: 40px;
    overflow: hidden;
    margin-top: 10px;
}

.best-card .price {
    font-size: 18px;
    font-weight: bold;
    color: #d63384;
    margin-bottom: 10px;
}
.best-slider-wrapper{
    position:relative;
    padding:0 45px;   /* space for arrows */
}

.best-prev,
.best-next{
    width:42px;
    height:42px;
    background:#fff;
    border-radius:50%;
    box-shadow:0 4px 12px rgba(0,0,0,.15);
    color:#d63384;
}

.best-prev{
    left:-5px;
}

.best-next{
    right:-5px;
}

.best-prev::after,
.best-next::after{
    font-size:18px;
    font-weight:bold;
}
@media (max-width:768px){

    .best-prev,
    .best-next{
        display:none;
    }

    .best-slider-wrapper{
        padding:0;
    }

}
             
        
