/*
 * LiveShopping-style storefront theme.
 * Loaded after app.css. Colours come from posadmin -> Website Color Setting:
 *   --ls-accent     (Theme Accent Color, default #fc630a)
 *   --ls-cat-bg     (Category Card Background, default #b0cce4)
 *   --footer-bg-color / --footer-text-color
 */
:root {
    --ls-accent: #fc630a;
    --ls-cat-bg: #b0cce4;
    --ls-dark: #022335;
    --ls-nav-bg: #f1f1f1;
}

body.ls-theme {
    font-family: 'Open Sans', 'Hind Siliguri', Arial, sans-serif;
    background: #fdfdfd;
    color: #333;
}
body.ls-theme a { text-decoration: none; }
.ls-theme .container { max-width: 1170px; }
@media (min-width: 1400px) {
    .ls-theme .container { max-width: 1170px !important; }
}

/* ---------------------------------------------------------------- header */
.ls-header { background: #fdfdfd; position: relative; z-index: 100; }
.ls-main-header { padding: 5px 0; }
.ls-main-header .row { align-items: center; }
.ls-logo img { max-width: 110px; max-height: 60px; margin-top: 5px; object-fit: contain; }
.ls-search { position: relative; }
.ls-search form { display: flex; gap: 4px; }
.ls-search input {
    flex: 1;
    border: 1px solid var(--ls-accent);
    border-radius: 5px;
    padding: 12px 13px;
    font-size: 13px;
    color: var(--ls-accent);
    outline: none;
    min-width: 0;
}
.ls-search button {
    background: var(--ls-accent);
    border: 1px solid var(--ls-accent);
    border-radius: 4px;
    color: #fff;
    width: 58px;
    font-size: 16px;
}
.ls-header-actions {
    display: flex;
    justify-content: flex-end;
    /*flex-wrap: wrap;*/
    gap: 5px;
    padding-top: 5px;
}
.ls-call {
    color: #fff !important;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 15px;
    height: 44px;
    font-weight: 600;
    letter-spacing: .02em;
    background: var(--ls-accent);
    font-size: 16px;
    white-space: nowrap;
}
.ls-call:hover { filter: brightness(.95); }
.ls-cart-btn {
    display: inline-flex;
    align-items: center;
    position: relative;
    cursor: pointer;
}
.ls-cart-btn .icon {
    border-radius: 4px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    width: 50px;
    background: var(--ls-accent);
    font-size: 20px;
    position: relative;
}
.ls-cart-btn .icon::after {
    content: '';
    position: absolute;
    left: 100%;
    top: 50%;
    margin-top: -5px;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid var(--ls-accent);
}
.ls-cart-btn .cart-count {
    margin-left: 4px;
    background: #6c6c6c;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    min-width: 18px;
    height: 18px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
}
.ls-account-link {
    color: #424242;
    display: inline-flex;
    align-items: center;
    height: 44px;
    padding: 0 6px;
    font-size: 20px;
}

/* search suggestions */
.search-suggestion-box {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #ddd;
    z-index: 9999;
    display: none;
    max-height: 350px;
    overflow-y: auto;
}
.search-item { padding: 10px; display: flex; align-items: center; cursor: pointer; }
.search-item:hover { background: #f8f9fa; }
.search-item img { width: 45px; height: 45px; object-fit: cover; margin-right: 10px; }

/* nav bar */
.ls-nav { background: var(--ls-nav-bg); }
.ls-nav.sticky { position: fixed; top: 0; left: 0; width: 100%; z-index: 999; box-shadow: 0px 0px 5px 1px #000; }
.ls-nav-placeholder { display: none; height: 46px; }
.ls-nav-placeholder.show { display: block; }
.ls-menu {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
.ls-menu > li { position: relative; }
.ls-menu > li > a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .5px;
    color: #424242;
    position: relative;
    transition: color .2s;
}
.ls-menu > li > a::after {
    content: '';
    width: 2px;
    height: 100%;
    background: #dfdfdf;
    position: absolute;
    right: 0;
    top: 0;
    transform: rotate(20deg);
}
.ls-menu > li:last-child > a::after { background: transparent; }
.ls-menu > li > a:hover { color: var(--ls-accent); }
.ls-menu .dp_menu {
    position: absolute;
    left: -10px;
    top: 100%;
    list-style: none;
    padding: 0;
    margin: 15px 0 0;
    box-shadow: 2px 5px 7px #a7a7a7d1;
    background: #fff;
    min-width: 200px;
    visibility: hidden;
    opacity: 0;
    transition: .3s;
    z-index: 200;
    max-height: 70vh;
    overflow-y: auto;
}
.ls-menu .dropdown:hover > .dp_menu { margin-top: 2px; visibility: visible; opacity: 1; }
.ls-menu .dp_menu li { border-bottom: 1px solid #ddd; }
.ls-menu .dp_menu li:last-child { border-bottom: 0; }
.ls-menu .dp_menu li a {
    padding: 6px 20px;
    display: block;
    font-size: 16px;
    color: #616161;
    font-weight: 600;
}
.ls-menu .dp_menu li a:hover { background: aliceblue; }
.ls-menu .dp_menu li.sub a { padding-left: 34px; font-size: 14px; font-weight: 500; }

/* mobile header bar */
.ls-mobile-bar {
    display: none;
    align-items: center;
    background: var(--ls-accent);
    min-height: 47px;
}
.ls-mobile-bar .sidebar_toggler {
    background: transparent;
    border: 0;
    border-right: 1px solid #ffffff5c;
    color: #fff;
    font-size: 25px;
    padding: 6px 12px;
}
.ls-mobile-bar .logo2 { flex-grow: 1; margin-left: 10px; }
.ls-mobile-bar .logo2 img { max-width: 80px; max-height: 40px; padding: 3px; object-fit: contain; background: #fff; border-radius: 4px; }
.ls-mobile-bar .m-icon {
    color: #fff;
    font-size: 20px;
    padding: 9px 10px;
    position: relative;
    background: transparent;
    border: 0;
}
.ls-mobile-bar .m-icon .cart-count {
    position: absolute;
    top: 2px;
    right: 0;
    background: #fff;
    color: #000;
    font-size: 10px;
    font-weight: 700;
    min-width: 16px;
    height: 16px;
    line-height: 16px;
    border-radius: 50%;
    text-align: center;
}
.ls-mobile-search {
    display: none;
    background: #ddd;
    padding: 10px;
    position: relative;
}
.ls-mobile-search.open { display: block; }
.ls-mobile-search form { display: flex; gap: 6px; }
.ls-mobile-search input { flex: 1; border: 0; border-radius: 8px; padding: 10px 12px; outline: none; min-width: 0; }
.ls-mobile-search button { border: 0; border-radius: 8px; background: var(--ls-accent); color: #fff; padding: 0 16px; }

@media (max-width: 768px) {
    .ls-main-header, .ls-nav { display: none !important; }
    .ls-mobile-bar { display: flex; position: sticky; top: 0; z-index: 998; }
}

/* mobile sidebar menu */
.ls-overlay {
    position: fixed;
    inset: 0;
    background: #00000047;
    z-index: 1040;
    display: none;
}
.ls-overlay.show { display: block; }
.ls-sidebar-menu {
    position: fixed;
    top: 0;
    left: -260px;
    width: 250px;
    height: 100vh;
    overflow-y: auto;
    background: #fff;
    z-index: 1050;
    padding: 15px;
    transition: left .35s;
    box-shadow: 2px 0 10px rgba(0,0,0,.15);
}
.ls-sidebar-menu.open { left: 0; }
.ls-sidebar-menu .close-x {
    position: absolute;
    right: 10px;
    top: 8px;
    background: transparent;
    border: 0;
    font-size: 20px;
    color: #333;
}
.ls-sidebar-menu .menu_item { padding: 5px 0; font-size: 14px; font-weight: bold; }
.ls-sidebar-menu .menu_item a { color: #000; display: flex; align-items: center; }
.ls-sidebar-menu .menu_item i { font-size: 15px; width: 30px; text-align: center; color: var(--ls-accent); }
.ls-sidebar-menu .menu_item.cats a { font-weight: normal; padding-left: 10px; }
.ls-sidebar-menu .menu_item.cats.sub a { padding-left: 26px; font-size: 13px; color: #555; }
.ls-sidebar-menu hr { margin: 10px 0; border-top: 1px solid #eee; opacity: 1; }

/* notice marquee */
.ls-theme .topbar { background: var(--ls-accent) !important; }
.ls-theme .topbar .marquee-wrap { color: #fff !important; }

/* ---------------------------------------------------------------- slider */
.ls-hero { margin-top: 8px; }
.ls-hero .carousel-item img { width: 100%; height: auto; }
.ls-hero .carousel-item img.ls-slide-desktop { display: block !important; }
.ls-hero .carousel-item img.ls-slide-mobile { display: none !important; }
@media (max-width: 768px) {
    .ls-hero { margin-top: 0; }
    .ls-hero .carousel-item img.ls-slide-desktop { display: none !important; }
    .ls-hero .carousel-item img.ls-slide-mobile { display: block !important; }
    .ls-hero .container { padding: 0; }
}
.ls-hero .carousel-control-prev, .ls-hero .carousel-control-next { width: 50px; opacity: 0; transition: .3s; }
.ls-hero:hover .carousel-control-prev, .ls-hero:hover .carousel-control-next { opacity: 1; }

/* ---------------------------------------------------------------- sections */
.ls-section { margin-top: 1rem; }
.flash_sale { background: #f5f5f5; border-radius: 15px; padding: 9px; }
.flash_title_box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    padding: 6px;
}
.flash_title { font-weight: bold; color: var(--ls-accent); margin: 0; font-size: 22px; text-transform: uppercase; }
.button_outline {
    color: var(--ls-accent) !important;
    border: 1px solid var(--ls-accent);
    padding: 7px 13px;
    font-weight: bold;
    font-size: 13px;
    text-transform: uppercase;
    background: #fff;
    display: inline-block;
    white-space: nowrap;
}
.button_outline:hover { background: var(--ls-accent); color: #fff !important; }
.flash_spacer { width: 100px; }
@media (max-width: 575px) { .flash_spacer { display: none; } .flash_title { font-size: 20px; } }

.cat_title {
    text-align: center;
    position: relative;
    padding: 20px 0;
    width: 100%;
    font-size: 25px;
    font-weight: bold;
    z-index: 2;
    color: #252525;
    text-transform: uppercase;
}
.cat_title span { background: #fdfdfd; padding: 0 20px; position: relative; z-index: 2; font-weight: 700; }
.cat_title .button_outline { position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 2; }
.cat_title::after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    border-bottom: 2px dotted #00000036;
    z-index: 1;
}
@media (max-width: 575px) {
    .cat_title { text-align: left; font-size: 20px; }
    .cat_title span { padding: 0 8px 0 0; }
}

.section-title {
    margin: 20px 0 10px;
    color: #000;
    font-size: 22px;
    font-weight: 500;
    text-transform: uppercase;
    text-align: center;
}

/* categories grid */
.ls-categories { padding-bottom: 20px; }
.ls-categories .ls-cat-col { padding: 0 6px; margin-bottom: 12px; }
.ls-cat-card {
    display: block;
    background: var(--ls-cat-bg);
    border-radius: 14px;
    padding: 10px;
    text-align: center;
    transition: .3s;
    height: 100%;
}
.ls-cat-card:hover { box-shadow: 0 4px 12px rgba(0,0,0,.18); }
.ls-cat-card .image {
    aspect-ratio: 52 / 56;
    overflow: hidden;
    border-radius: 10%;
    background: #ffffff66;
}
.ls-cat-card .image img { width: 100%; height: 100%; object-fit: cover; border-radius: 10%; }
.ls-cat-card h2 {
    margin: 10px 0 0;
    line-height: 20px;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 15px;
    color: #252525;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media (max-width: 480px) {
    .ls-categories .ls-cat-col { padding: 0 4px; }
    .ls-cat-card { padding: 5px 5px 10px; }
    .ls-cat-card h2 { font-size: 13px; line-height: 1; }
}

/* ---------------------------------------------------------------- product card */
.ls-grid, .ls-theme .products { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
@media (max-width: 1100px) { .ls-grid, .ls-theme .products { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 768px) { .ls-grid, .ls-theme .products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 575px) { .ls-grid, .ls-theme .products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; } }
.ls-theme .products .product.ls-card {
    width: auto !important;
    max-width: none;
    margin: 0;
    border-radius: 5px 5px 0 0;
    overflow: visible;
    cursor: default;
}
.ls-theme .products > :not(.product) { grid-column: 1 / -1; }

.ls-card.product {
    border: 1px solid #ebebeb;
    background: #fff;
    border-radius: 5px 5px 0 0;
    box-shadow: 0 7px 10px 0 rgba(23, 84, 116, .18);
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: border-color .3s;
    overflow: visible;
    padding: 0;
    margin: 0;
    width: auto;
}
.ls-card.product:hover { border-color: gray; border-radius: 5px; }
.ls-card .ppname {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 15px;
    color: #000;
    text-align: center;
    padding: 2px 6px 0;
    height: 24px;
    line-height: 22px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: block;
}
.ls-hide-name .ls-card .ppname { display: none; }
.ls-card .product-image { padding: 10px 10px 0; position: relative; }
.ls-card .product-image .image {
    display: block;
    aspect-ratio: 1 / 1.15;
    overflow: hidden;
    border-radius: 5px;
    background: #f6f6f6;
}
.ls-card .product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
    transition: transform .6s;
}
.ls-card:hover .product-image img { transform: scale(1.04); }
.ls-card .product-info {
    text-align: center;
    margin-top: -22px;
    position: relative;
    z-index: 2;
    margin-bottom: 8px;
}
.ls-card .product-price {
    background: #fff;
    border-radius: 5px;
    display: inline-block;
    padding: 4px 10px;
    font-weight: bold;
    font-size: 14px;
    box-shadow: 0 0 8px 0 #80808096;
    color: #000;
    white-space: nowrap;
}
.ls-card .product-price .current_price { color: #000; }
.ls-card .product-price .delprice { color: #79767a; font-size: 12px; margin-left: 3px; font-weight: 600; }
.ls-card .labels { position: absolute; top: 18px; left: 0; z-index: 3; display: flex; flex-direction: column; gap: 4px; }
.ls-card .labels .tag {
    background: var(--ls-accent) !important;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 8px;
    width: auto !important;
    height: auto !important;
    border-radius: 0 3px 3px 0;
    position: static;
}
.ls-card .ls-order-wrap { margin-top: auto; }
.ls-card .ls-order-btn,
.ls-card form#cart_form .ls-order-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 100%;
    background: #000 !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 0 0 3px 3px;
    padding: 6px 4px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Hind Siliguri', sans-serif;
    line-height: 1.3;
    box-shadow: none;
    min-height: 0;
}
.ls-card .ls-order-btn:hover { background: var(--ls-accent) !important; }
.ls-card .ls-order-btn::before, .ls-card .ls-order-btn::after { display: none !important; }
.ls-card .ls-order-btn i { color: #fff !important; }
.ls-card .ls-order-btn i::before { color: #fff !important; }
.ls-card .variant_data_order { z-index: 20; }

/* carousel rows (slick) */
.ls-carousel { position: relative; }
.ls-carousel:not(.slick-initialized) { display: flex; overflow: hidden; gap: 6px; }
.ls-carousel:not(.slick-initialized) > .ls-slide { flex: 0 0 calc(20% - 5px); }
@media (max-width: 1100px) { .ls-carousel:not(.slick-initialized) > .ls-slide { flex-basis: calc(25% - 5px); } }
@media (max-width: 768px) { .ls-carousel:not(.slick-initialized) > .ls-slide { flex-basis: calc(33.33% - 4px); } }
@media (max-width: 575px) { .ls-carousel:not(.slick-initialized) > .ls-slide { flex-basis: calc(50% - 3px); } }
.ls-carousel .ls-slide { padding: 3px; height: auto; }
.ls-carousel .slick-track { display: flex !important; margin-left: 0; }
.ls-carousel .slick-slide { height: inherit !important; }
.ls-carousel .slick-slide > div { height: 100%; }
.ls-carousel .slick-arrow {
    position: absolute;
    top: 40%;
    z-index: 5;
    width: 38px;
    height: 46px;
    border: 0;
    background: #dddbdb8f;
    color: #222;
    font-size: 20px;
    font-weight: bold;
    transition: .3s;
}
.ls-carousel .slick-arrow:hover { background: #dddbdb; }
.ls-carousel .slick-prev { left: 7px; }
.ls-carousel .slick-next { right: 7px; }
.ls-carousel .slick-prev::before, .ls-carousel .slick-next::before { content: none; }

/* flash deal countdown */
.clockdiv { display: flex; align-items: center; gap: 5px; color: #333; font-size: 16px; font-weight: 700; }
.clockdiv span.num { color: #fff; }
.clockdiv .text { color: var(--ls-accent); font-weight: 700; }
.clockdiv span.num { padding: 2px 6px; border-radius: 3px; background: #e73a2a; display: inline-block; min-width: 30px; text-align: center; }

/* brands */
.ls-brands .ls-brand {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #ebebeb;
    border-radius: 8px;
    padding: 10px;
    height: 100px;
}
.ls-brands .ls-brand img { max-width: 100%; max-height: 80px; object-fit: contain; }

/* infinite loader */
.auto-load { text-align: center; padding: 20px 0; color: #888; }

/* ---------------------------------------------------------------- floating cart tab */
.ls-side-cart {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
    height: 60px;
    background: #fff;
    box-shadow: 2px 2px 8px var(--ls-dark);
    z-index: 990;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
}
.ls-side-cart .fixed-cart-bottom { position: static; background: transparent; box-shadow: none; width: auto; height: auto; }
.ls-side-cart .ls-side-count { position: absolute; top: 4px; right: 10px; font-size: 13px; color: #000; }
.ls-side-cart i { font-size: 16px; color: #000; }
@media (max-width: 768px) { .ls-side-cart { top: auto; bottom: 120px; transform: none; width: 50px; height: 50px; } }

/* cart sidebar */
.ls-theme .cart_sidebar { z-index: 1060; }
.ls-theme .cart_sidebar .card-header { background: #000; color: #fff; display: flex; justify-content: space-between; align-items: center; }
.ls-theme .cart_sidebar .card-header h5 { color: #fff; font-weight: 700; }
.ls-theme .cart_sidebar .card-header .cart_dismiss { color: #dc3545; }
.ls-theme .overlay { z-index: 1055; }

/* back to top */
.ls-back-to-top {
    position: fixed;
    left: 20px;
    bottom: 20px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #fc630a9e;
    background: color-mix(in srgb, var(--ls-accent) 62%, transparent);
    color: #fff;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    cursor: pointer;
    z-index: 990;
    border: 0;
}
.ls-back-to-top.show { display: flex; }
.ls-back-to-top:hover { background: var(--ls-accent); }
@media (max-width: 775px) { .ls-back-to-top { left: auto; right: 10px; bottom: 64px; width: 40px; height: 40px; font-size: 22px; } }

/* ---------------------------------------------------------------- footer */
.ls-footer { background: var(--ls-footer-bg, var(--ls-dark)); padding: 20px 0; border-top: 1px solid #fff; color: #fff; }
.ls-footer .f_item {
    border-radius: 10px;
    background: #00000054;
    /*min-height: 325px;*/
    margin-bottom: 10px;
    flex: 1 1 auto;
}
.ls-footer .row > div { display: flex; flex-direction: column; }
.ls-footer .store_locations { flex: 0 0 auto; }
.ls-footer .f_item .content { padding: 20px 20px 40px; color: #fff; font-size: 16px; line-height: 1.5; }
.ls-footer .f_logo { text-align: center; }
.ls-footer .f_logo img { max-width: 170px; width: 100%; padding: 20px; }
.ls-footer h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--ls-accent);
    display: inline-block;
}
.ls-footer .social { display: flex; justify-content: flex-start; flex-wrap: wrap; gap: 8px; margin: 10px 0 0; padding: 0 10px; }
.ls-footer .social a {
    color: #fff;
    width: 44px;
    height: 44px;
    line-height: 44px;
    padding: 0;
    text-align: center;
    font-size: 20px;
    border-radius: 8px;
    transition: .3s;
    display: inline-block;
}
.ls-footer .social a.facebook { background: #3b5998; }
.ls-footer .social a.instagram { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.ls-footer .social a.tiktok { background: #000; }
.ls-footer .social a.youtube { background: #f00; }
.ls-footer .social a.twitter { background: #111; }
.ls-footer .social a.linkedin { background: #0a66c2; }
.ls-footer .social a:hover { background: var(--ls-accent); }
.ls-footer .address_row { display: flex; align-items: center; }
.ls-footer .address_row > div { padding: 6px; }
.ls-footer .address_row .icon { width: 32px; flex: 0 0 32px; text-align: center; }
.ls-footer .address_row .icon i { font-size: 20px; }
.ls-footer .address_row a { color: #fff; font-weight: 600; word-break: break-all; }
.ls-footer .service_col a { padding: 6px; color: #ebebeb; display: block; }
.ls-footer .service_col a:hover { color: var(--ls-accent); }
.ls-footer .store_locations {
    font-weight: 500;
    color: #fff;
    background: var(--ls-accent);
    width: 100%;
    display: block;
    text-align: center;
    margin-top: 10px;
    border-radius: 5px;
    padding: 10px;
    text-transform: uppercase;
    font-size: 14px;
}
.ls-footer .store_locations i { padding-right: 10px; }
.ls-footer hr { border-top: 1px solid #fff; opacity: 1; margin: 10px 0; }
.ls-footer .payment-banner { width: 100%; margin-bottom: 10px; border-radius: 2px; }
.ls-footer .footalltest { color: #fff; font-size: 15px; text-align: center; }
.ls-footer .footalltest a { color: var(--ls-accent); }
@media (max-width: 775px) {
    .ls-footer { margin-bottom: 50px; }
    .ls-footer .f_item .content { padding-bottom: 20px; }
    .ls-footer .f_item { min-height: 0; }
    .ls-footer .store_locations { font-size: 16px; }
}

/* mobile bottom bar */
.foot_bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 999;
    box-shadow: 0 -2px 8px rgba(0,0,0,.08);
}
.foot_bar .menu_items { display: flex; justify-content: space-around; gap: 10px; }
.foot_bar .menu_item { font-size: 13px; padding: 8px 10px; font-family: serif; white-space: nowrap; }
.foot_bar .menu_item a { color: #4e4e4e; text-align: center; font-weight: 600; display: block; }
.foot_bar .menu_item a i { color: var(--ls-accent); display: block; font-size: 17px; }
@media (min-width: 775px) { .foot_bar { display: none; } }

/* hide old widgets replaced by this theme */
.ls-theme .footer-nav { display: none !important; }
.ls-theme .multi-action.desktop { bottom: 90px; }

/* ---------------------------------------------------------------- shop page */
.ls-shop { padding: 20px 0 30px; }
.ls-shop-sidebar h4 { font-size: 18px; font-weight: 600; margin: 10px 0 15px; color: #222; }
.ls-shop-sidebar .cat-list { list-style: none; padding: 0; margin: 0 0 15px; border-bottom: 1px solid #eee; padding-bottom: 10px; }
.ls-shop-sidebar .cat-list li { display: flex; align-items: center; justify-content: space-between; padding: 4px 0; font-size: 13px; }
.ls-shop-sidebar .cat-list li a { color: #1a9cb8; font-weight: 600; display: flex; align-items: center; gap: 8px; }
.ls-shop-sidebar .cat-list li a::before {
    content: '';
    width: 13px;
    height: 13px;
    background: #eee;
    border: 1px solid #e3e3e3;
    display: inline-block;
}
.ls-shop-sidebar .cat-list li.active > a { color: var(--ls-accent); }
.ls-shop-sidebar .cat-list li.active > a::before { background: var(--ls-accent); border-color: var(--ls-accent); }
.ls-shop-sidebar .cat-list li.sub a { color: #333; padding-left: 16px; }
.ls-shop-sidebar .cat-list li.child a { color: #555; padding-left: 32px; font-weight: 500; }
.ls-shop-sidebar .cat-list .count {
    background: #f1f1f1;
    border-radius: 10px;
    font-size: 10px;
    padding: 1px 6px;
    color: #333;
    min-width: 22px;
    text-align: center;
}
.ls-shop-sidebar select, .ls-shop-sidebar input {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 3px;
    padding: 6px 10px;
    font-size: 13px;
}
.ls-price-inputs { display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; margin-top: 10px; }
.ls-price-inputs input { width: 70px; text-align: center; padding: 4px; }
.ls-price-range { position: relative; height: 24px; }
.ls-price-range input[type=range] {
    position: absolute;
    width: 100%;
    pointer-events: none;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    top: 6px;
    border: 0;
    padding: 0;
    height: 6px;
}
.ls-price-range .track { position: absolute; top: 9px; left: 0; right: 0; height: 4px; background: var(--ls-accent); border-radius: 2px; }
.ls-price-range input[type=range]::-webkit-slider-thumb { pointer-events: all; -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 4px solid var(--ls-accent); cursor: pointer; position: relative; z-index: 2; }
.ls-price-range input[type=range]::-moz-range-thumb { pointer-events: all; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 4px solid var(--ls-accent); cursor: pointer; }
.ls-shop-title { font-size: 22px; text-transform: uppercase; margin: 10px 0 20px; color: #000; font-weight: 500; }
.ls-shop-search { display: flex; border: 1px solid #ccc; margin-bottom: 10px; }
.ls-shop-search input { flex: 1; border: 0; padding: 6px 10px; outline: none; background: #f9f9f9; min-width: 0; }
.ls-shop-search button { border: 0; border-left: 1px solid #ccc; background: #fff; width: 44px; font-size: 18px; }
.ls-cats-tag { display: inline-block; background: #1a9cb8; color: #fff; font-size: 11px; padding: 2px 6px; border-radius: 2px; margin-bottom: 10px; }
.ls-cats-tag a { color: #fff; margin-left: 6px; }
.ls-shop .products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 991px) { .ls-shop .products { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 575px) { .ls-shop .products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ls-shop .banner_img { width: 100%; margin-bottom: 10px; grid-column: 1 / -1; }
.ls-filter-toggle { display: none; }
@media (max-width: 991px) {
    .ls-filter-toggle { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--ls-accent); color: var(--ls-accent); background: #fff; padding: 5px 12px; margin-bottom: 10px; font-weight: 600; }
    .ls-shop-sidebar { display: none; }
    .ls-shop-sidebar.open { display: block; }
}

/* ---------------------------------------------------------------- product details */
.ls-pd { padding-top: 20px; }
.ls-pd-box { background: #fff; box-shadow: 0 0 5px rgba(0,0,0,.08); padding: 20px 15px; margin-bottom: 20px; }
.ls-pd .img_section .carousel { background: #fff; box-shadow: 0 0 20px rgba(0,0,0,.12); padding: 15px; }
.ls-pd .img_section .carousel-item.shadow-lg { box-shadow: none !important; }
.ls-pd .img_section .nav_images { position: static; margin: 10px 0 0; justify-content: flex-start; gap: 6px; flex-wrap: wrap; }
.ls-pd .img_section .nav_images img { width: 58px !important; height: 64px; object-fit: cover; border-radius: 8px; border: 1px solid #ddd; margin: 0; opacity: 1; cursor: pointer; text-indent: 0; }
.ls-pd .img_section .nav_images img.active { border-color: var(--ls-accent); }
.ls-pd h2.title, .ls-pd .ls-pd-name { font-size: 22px; font-weight: 600; color: #555; line-height: 1.25; margin: 0 0 8px; }
.ls-pd .ls-sku { font-size: 13px; color: #333; margin-bottom: 6px; }
.ls-pd .pro_price .current_price, .ls-pd h4.current_price { color: #555; font-size: 22px; font-weight: 700; margin: 0; }
.ls-theme .ls-card .product-price .current_price { font-size: 14px !important; font-weight: 700; color: #000; }
.ls-theme .ls-card .product-price del { font-size: 12px !important; }
.ls-pd .pro_price { align-items: baseline; gap: 6px; }
.ls-pd .pro_price del, .ls-pd .pro_price del span { color: #79767a !important; font-size: 17px !important; }
.ls-pd .pro_price h4 { font-size: 22px; }
.ls-pd .sizes .burmanRadio__label { border: 1px solid var(--ls-accent); border-radius: 3px; min-width: 28px; padding: 4px 8px; }
.ls-pd .ls-variant-group { border-bottom: 2px solid var(--ls-accent); padding-bottom: 12px; margin-bottom: 12px !important; }
.ls-pd .ls-variant-group h6 { font-weight: 700; font-size: 15px; }
.ls-pd .ls-qty-row { display: flex; align-items: center; gap: 15px; flex-wrap: wrap; }
.ls-pd .ls-qty-row .quantity_box { display: flex; border: 0; margin: 0 !important; }
.ls-pd .ls-qty-row .quantity_box .btn { border: 1px solid #333; border-radius: 0; width: 28px; height: 28px; padding: 0; font-weight: 700; background: #fff; color: #000; }
.ls-pd .ls-qty-row .quantity_box input { width: 30px; height: 28px; border: 1px solid #ccc; border-left: 0; border-right: 0; border-radius: 0; text-align: center; padding: 0; }
.ls-pd .ls-qty-row .cart_store {
    flex: 1;
    min-width: 140px;
    background: var(--ls-accent) !important;
    color: #fff !important;
    border-radius: 3px !important;
    font-family: 'Hind Siliguri', sans-serif;
    font-weight: 600;
    padding: 4px 10px;
    margin: 0 !important;
    animation: none;
}
.ls-pd .ls-qty-row .cart_store i { display: none; }
.ls-pd .btn_submit .add_to_cart { background: #eee !important; color: #333 !important; border-radius: 3px !important; font-size: 13px; border: 0; }
.ls-pd .call_now .btn { border-radius: 3px !important; font-size: 14px; }
.ls-pd .btn_submit, .ls-pd .call_now { margin-top: 8px; }
.ls-pd .ls-share { display: flex; justify-content: center; gap: 4px; margin-top: 12px; }
.ls-pd .ls-share a { width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff; font-size: 14px; }
.ls-pd .ls-share .fb { background: #3b5998; }
.ls-pd .ls-share .tw { background: #1da1f2; }
.ls-pd .ls-share .wa { background: #25d366; }
.ls-pd .ls-share .ms { background: #e1306c; }
.ls-pd .ls-policy { border: 2px dashed #e31b23; padding: 15px; font-size: 13px; }
.ls-pd .ls-policy p, .ls-pd .ls-policy li { margin-bottom: 6px; }
.ls-pd .ls-policy ul { padding-left: 0; list-style: none; }
.ls-pd .ls-policy ul li::before { content: '\f00c'; font-family: 'Font Awesome 6 Free'; font-weight: 900; margin-right: 6px; }
.ls-pd .ls-size-chart img { width: 100%; margin-top: 15px; }
.ls-pd .description_tab { background: #fff; box-shadow: 0 0 5px rgba(0,0,0,.08); margin-bottom: 30px; }
.ls-pd .description_tab .container-xl { padding: 0; }
.ls-pd #product_des { background: #f6f6f6; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.ls-pd #product_des .nav-link {
    border-radius: 0;
    color: #555;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 13px;
    padding: 14px 20px;
    background: transparent;
    letter-spacing: .5px;
}
.ls-pd #product_des .nav-link.active { background: var(--ls-accent); color: #fff; }
.ls-pd .description_tab .tab-content { margin: 0 !important; padding: 20px 15px; }
.ls-pd .ls-related h3 { font-size: 20px; text-transform: uppercase; font-weight: 500; margin: 10px 0 15px; color: #000; }

/* ---------------------------------------------------------------- generic pages */
.ls-theme .btn-dark.text-cap, .ls-theme .cart_sidebar .btn-dark { background: #000; }
.ls-empty-box { background: #fff; box-shadow: 0 0 5px rgba(0,0,0,.08); padding: 25px; text-align: center; margin: 15px 0; }
.ls-empty-box .btn { background: var(--ls-accent); color: #fff; font-weight: 700; font-size: 12px; }

/* ================================================================ AJAX UI */

/* quick order popup (LiveShopping "Choose Size" modal) */
.ls-qm .modal-content { border: 0; border-radius: 4px; overflow: hidden; }
.ls-qm .ls-qm-header { background: #5cb85c; color: #fff; padding: 10px 15px; border: 0; }
.ls-qm .ls-qm-header .modal-title { font-size: 18px; font-weight: 600; margin: 0; }
.ls-qm .ls-qm-close { background: transparent; border: 0; color: #fff; font-size: 28px; line-height: 1; opacity: 1; }
.ls-qm .modal-body { padding: 15px; }
.ls-qm-image { position: relative; border: 1px solid #eee; border-radius: 6px; overflow: hidden; background: #f6f6f6; aspect-ratio: 1 / 1; }
.ls-qm-image img { width: 100%; height: 100%; object-fit: cover; }
.ls-qm-off { position: absolute; top: 10px; left: 0; background: var(--ls-accent); color: #fff; font-weight: 700; font-size: 13px; padding: 3px 10px; border-radius: 0 20px 20px 0; }
.ls-qm-thumbs { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.ls-qm-thumbs img { width: 52px; height: 52px; object-fit: cover; border: 2px solid #eee; border-radius: 6px; cursor: pointer; }
.ls-qm-thumbs img.active { border-color: var(--ls-accent); }
.ls-qm-name { font-size: 18px; font-weight: 600; color: #333; margin: 0 0 4px; line-height: 1.3; }
.ls-qm-sku { font-size: 12px; color: #777; }
.ls-qm-price { margin: 8px 0 6px; display: flex; align-items: baseline; gap: 8px; }
.ls-qm-price .now { font-size: 24px; font-weight: 700; color: var(--ls-accent); }
.ls-qm-price del { color: #79767a; font-size: 16px; }
.ls-qm-label { font-size: 15px; font-weight: 700; margin: 10px 0 6px; color: #222; }
.ls-qm-label .ls-qm-picked { color: var(--ls-accent); font-weight: 600; }
.ls-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.ls-chip { position: relative; margin: 0; cursor: pointer; }
.ls-chip input { position: absolute; opacity: 0; pointer-events: none; }
.ls-chip span {
    display: inline-block;
    min-width: 45px;
    padding: 7px 10px;
    border: 1px solid #000;
    text-align: center;
    font-size: 14px;
    transition: .2s;
    background: #fff;
}
.ls-chip:hover span, .ls-chip.active span, .ls-chip input:checked + span { background: #000; color: #fff; }
.ls-chip.disabled { cursor: not-allowed; }
.ls-chip.disabled span { color: #aaa; border-color: #ddd; background: repeating-linear-gradient(135deg, #fff, #fff 6px, #f3f3f3 6px, #f3f3f3 12px); text-decoration: line-through; }
.ls-qm-quantity { display: flex; align-items: center; border: 1px solid #000; height: 34px; width: 130px; font-weight: 700; font-size: 16px; }
.ls-qm-quantity button { width: 34px; height: 100%; border: 0; background: #fff; font-size: 18px; font-weight: 700; cursor: pointer; }
.ls-qm-quantity button:hover { background: #f1f1f1; }
.ls-qm-quantity .value { flex: 1; text-align: center; border-left: 1px solid #000; border-right: 1px solid #000; line-height: 32px; }
.ls-qm-stock { margin-top: 10px; font-size: 13px; color: #28a745; font-weight: 600; }
.ls-qm-stock.out { color: #dc3545; }
.ls-qm-error { margin-top: 10px; background: #fdecea; color: #b42318; border-left: 3px solid #e31b23; padding: 7px 10px; font-size: 13px; font-weight: 600; }
.ls-qm-details { display: inline-block; margin-top: 12px; font-size: 13px; color: var(--ls-accent); font-weight: 600; }
.ls-qm-footer { display: flex; justify-content: space-between; gap: 6px; padding: 10px 15px; border-top: 1px solid #eee; }
.ls-qm-footer .btn { border-radius: 0; font-weight: 700; padding: 8px 14px; }
.ls-qm-footer .btn-cart { background: #000; color: #fff; margin-left: auto; }
.ls-qm-footer .btn-cart:hover { background: #222; color: #fff; }
.ls-qm-footer .ls-qm-order { background: var(--ls-accent); color: #fff; font-family: 'Hind Siliguri', sans-serif; }
.ls-qm-footer .ls-qm-order:hover { color: #fff; filter: brightness(.95); }
.ls-qm-footer .btn:disabled { opacity: .55; }
@media (max-width: 575px) {
    .ls-qm .modal-dialog { margin: 0; min-height: 100%; align-items: flex-end; }
    .ls-qm .modal-content { border-radius: 14px 14px 0 0; max-height: 92vh; }
    .ls-qm form { display: flex; flex-direction: column; min-height: 0; }
    .ls-qm .modal-body { overflow-y: auto; }
    .ls-qm-image { aspect-ratio: auto; display: flex; gap: 10px; border: 0; background: transparent; }
    .ls-qm-image img { width: 110px; height: 110px; border-radius: 6px; }
    .ls-qm-thumbs { display: none; }
    .ls-qm-footer .btn-dark { display: none; }
    .ls-qm-footer .btn { flex: 1; }
}

/* button loading spinner */
.ls-loading { position: relative; color: transparent !important; pointer-events: none; }
.ls-loading::after {
    content: "";
    position: absolute;
    left: 50%; top: 50%;
    width: 18px; height: 18px;
    margin: -9px 0 0 -9px;
    border: 2px solid #fff;
    border-right-color: transparent;
    border-radius: 50%;
    animation: ls-spin .7s linear infinite;
}
@keyframes ls-spin { to { transform: rotate(360deg); } }

/* skeleton loaders */
.sk { background: linear-gradient(90deg, #eee 25%, #f7f7f7 37%, #eee 63%); background-size: 400% 100%; animation: ls-shimmer 1.2s ease infinite; border-radius: 4px; }
@keyframes ls-shimmer { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }
.ls-qm-loading { display: flex; gap: 15px; padding: 20px; }
.ls-qm-loading .sk-img { width: 40%; aspect-ratio: 1 / 1; }
.ls-qm-loading .sk-col { flex: 1; display: flex; flex-direction: column; gap: 12px; }
.ls-qm-loading .sk-line { height: 16px; }
.ls-qm-loading .sk-chips { height: 34px; width: 70%; }
.w80 { width: 80%; } .w60 { width: 60%; } .w40 { width: 40%; }
.ls-skeleton { padding: 8px !important; gap: 8px; box-shadow: none !important; }
.ls-skeleton .sk-name { height: 14px; width: 80%; margin: 0 auto; }
.ls-skeleton .sk-img { aspect-ratio: 1 / 1.15; }
.ls-skeleton .sk-btn { height: 28px; }

/* shake on validation error, bump on cart change */
.ls-shake { animation: ls-shake .4s; }
@keyframes ls-shake { 0%, 100% { transform: translateX(0); } 20%, 60% { transform: translateX(-6px); } 40%, 80% { transform: translateX(6px); } }
.cart-count.ls-bump { animation: ls-bump .45s; display: inline-block; }
@keyframes ls-bump { 0% { transform: scale(1); } 40% { transform: scale(1.35); } 100% { transform: scale(1); } }
.ls-side-cart.ls-bump i { animation: ls-bump .45s; }
.ls-busy { opacity: .45; pointer-events: none; transition: opacity .2s; }

/* cart sidebar (LiveShopping) */
.ls-theme .cart_sidebar {
    position: fixed;
    top: 0;
    right: -340px;
    width: 330px;
    max-width: 92vw;
    height: 100vh;
    background: #fff;
    box-shadow: 0 3px 12px 0 rgb(183 183 183);
    transition: right .35s;
    visibility: visible;
    opacity: 1;
    display: block;
}
.ls-theme .cart_sidebar.active { right: 0; }
.ls-cart .card-header { background: #000 !important; padding: 7px 8px; border-radius: 0 !important; }
.ls-cart .card-header h5 { color: #fff; font-weight: 700; font-size: 20px; }
.ls-cart .card-header h5 small { font-size: 13px; color: #bbb; }
.ls-cart .card-header .cart_dismiss { color: #dc3545; font-size: 18px; border: 0; }
.ls-cart .card-body { min-height: 0; height: calc(100vh - 52px); }
.ls-cart-items { flex: 1; overflow-y: auto; padding: 8px; }
.ls-cart-item { display: flex; gap: 8px; padding: 8px; border-bottom: 1px solid #f0f0f0; transition: background .2s; }
.ls-cart-item:hover { background: #f7f7f7; }
.ls-cart-item .image img { width: 60px; height: 66px; object-fit: cover; border-radius: 4px; }
.ls-cart-item .content { flex: 1; min-width: 0; }
.ls-cart-item .name { color: #222; font-size: 13px; font-weight: 600; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.3; }
.ls-cart-item .variant { font-size: 11px; color: #777; }
.ls-cart-item .price { font-size: 13px; font-weight: 700; color: var(--ls-accent); margin: 2px 0 4px; }
.ls-cart-item .price del { color: #999; font-weight: 400; font-size: 11px; }
.ls-ci-qtybox { display: inline-flex; border: 1px solid #333; height: 26px; }
.ls-ci-qtybox button { width: 26px; border: 0; background: #fff; font-weight: 700; padding: 0; }
.ls-ci-qtybox button:hover { background: #000; color: #fff; }
.ls-ci-qtybox input { width: 34px; border: 0; border-left: 1px solid #333; border-right: 1px solid #333; text-align: center; font-size: 13px; font-weight: 700; padding: 0; background: #fff; }
.ls-cart-item .right { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; }
.ls-cart-item .deleteCart { position: static; margin: 0; }
.ls-ci-remove { border: 0; background: transparent; color: #dc3545; font-size: 14px; padding: 2px 4px; }
.ls-cart-item .line-total { font-size: 13px; font-weight: 700; white-space: nowrap; }
.ls-cart-footer { border-top: 1px solid #eee; padding: 10px; background: #fafafa; }
.ls-cart-progress { margin-bottom: 10px; font-size: 12px; }
.ls-cart-progress .txt { margin-bottom: 4px; color: #333; }
.ls-cart-progress .txt.done { color: #28a745; font-weight: 600; }
.ls-cart-progress .bar { height: 6px; background: #e9e9e9; border-radius: 3px; overflow: hidden; }
.ls-cart-progress .bar span { display: block; height: 100%; background: var(--ls-accent); transition: width .4s; }
.ls-cart-checkout { background: var(--ls-accent); color: #fff !important; font-weight: 700; border-radius: 0; padding: 9px; font-family: 'Hind Siliguri', 'Open Sans', sans-serif; }
.ls-cart-checkout:hover { filter: brightness(.95); }
.ls-cart-continue { background: #000; color: #fff; border-radius: 0; font-family: 'Hind Siliguri', sans-serif; }
.ls-cart-continue:hover { background: #222; color: #fff; }
.ls-cart-empty .empty_icon { font-size: 80px; opacity: .3; }

/* live search dropdown */
.search-suggestion-box { border-radius: 0 0 6px 6px; box-shadow: 0 8px 20px rgba(0,0,0,.12); border-top: 0; max-height: 420px; }
.search-suggestion-box .search-item { gap: 10px; padding: 8px 10px; border-bottom: 1px solid #f3f3f3; color: #222; }
.search-suggestion-box .search-item img { width: 44px; height: 44px; margin: 0; border-radius: 4px; }
.search-suggestion-box .search-item .info { flex: 1; min-width: 0; }
.search-suggestion-box .search-item .name { font-size: 13px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.search-suggestion-box .search-item small { color: #888; font-size: 11px; }
.search-suggestion-box .search-item .price { color: var(--ls-accent); font-weight: 700; font-size: 13px; white-space: nowrap; }
.search-suggestion-box .search-item mark { background: #ffe7d6; padding: 0; color: inherit; }
.search-suggestion-box .search-item:hover, .search-suggestion-box .search-item.active { background: #fff4ec; }
.search-suggestion-box .ls-sr-all { display: block; text-align: center; padding: 9px; font-weight: 700; font-size: 13px; color: #fff; background: var(--ls-accent); }
.search-suggestion-box .ls-sr-all.active { filter: brightness(.92); }
.search-suggestion-box .ls-sr-empty { padding: 12px; color: #777; font-size: 13px; }
.ls-mobile-search .search-suggestion-box { left: 10px; right: 10px; }

/* mobile menu sub categories */
.ls-sub-toggle { border: 0; background: transparent; color: #555; width: 30px; font-size: 12px; }
.ls-sub-toggle.open i::before { content: "\f068"; }
.ls-sub-list { display: none; }

/* cart sidebar sits above the chat widget; old .quantity_box styles must not leak in */
.ls-theme .cart_sidebar { z-index: 100001; }
.ls-theme .overlay { z-index: 100000; }
.ls-ci-qtybox button { color: #000 !important; background: #fff !important; min-height: 0 !important; height: 100% !important; line-height: 1 !important; box-shadow: none !important; }
.ls-ci-qtybox button:hover { background: #000 !important; color: #fff !important; }

/* ---------------------------------------------------------------- checkout (LiveShopping colours) */
.ls-checkout-title { font-size: 22px; font-weight: 600; text-transform: uppercase; margin: 10px 12px 15px; color: #000; }
.ls-checkout-title i { color: var(--ls-accent); margin-right: 6px; }
.ls-checkout .card { border: 0; box-shadow: 0 0 6px rgba(0,0,0,.08); border-radius: 6px; overflow: hidden; }
.ls-checkout .card-header { background: #fff4ec; border-bottom: 2px solid var(--ls-accent); padding: 12px; }
.ls-checkout .card-header h5 { font-size: 15px; line-height: 1.5; color: #333; }
.ls-checkout fieldset { border-color: #cfcfcf !important; transition: border-color .2s, box-shadow .2s; }
.ls-checkout fieldset:focus-within { border-color: var(--ls-accent) !important; box-shadow: 0 0 0 3px rgba(252, 99, 10, .12); }
.ls-checkout fieldset legend { font-size: 15px; color: #555; }
.ls-checkout fieldset:focus-within legend { color: var(--ls-accent); }
.ls-checkout .shipping-option { border: 1px solid var(--ls-accent) !important; color: var(--ls-accent) !important; background: #fff !important; border-radius: 4px !important; font-weight: 600; }
.ls-checkout .shipping-option.active, .ls-checkout .shipping-option:hover { background: var(--ls-accent) !important; color: #fff !important; }
.ls-checkout .sub_btn, .ls-theme .button_sticky {
    background: var(--ls-accent) !important;
    border: 0 !important;
    color: #fff !important;
    border-radius: 4px !important;
    font-family: 'Hind Siliguri', sans-serif;
    font-weight: 700;
    font-size: 20px;
    padding: 12px;
}
.ls-checkout .sub_btn:hover { filter: brightness(.95); }
.ls-checkout .form-check-input:checked { background-color: var(--ls-accent); border-color: var(--ls-accent); }
.ls-checkout .checkout-card { border-radius: 6px; box-shadow: 0 0 6px rgba(0,0,0,.08); border: 0; }
.ls-checkout .checkout-card h5 { border-bottom: 2px solid var(--ls-accent); padding-bottom: 8px; display: inline-block; }
.ls-checkout .osi-price, .ls-checkout .os-totals-row.total span:last-child { color: var(--ls-accent); font-weight: 700; }
.ls-checkout .couponButton.main-bg { background: var(--ls-accent) !important; border-color: var(--ls-accent) !important; }
.ls-checkout .qtybtn:hover { background: var(--ls-accent); color: #fff; }

/* ---------------------------------------------------------------- order tracking / simple pages */
.ls-track-input { display: flex; border: 1px solid var(--ls-accent); border-radius: 5px; overflow: hidden; }
.ls-track-input input { flex: 1; border: 0; padding: 11px 13px; outline: none; font-size: 16px; min-width: 0; letter-spacing: 1px; }
.ls-track-input button { border: 0; background: var(--ls-accent); color: #fff; font-weight: 700; padding: 0 22px; }
.ls-track-count { font-size: 16px; font-weight: 700; margin: 5px 0 12px; }
.ls-track-order { background: #fff; box-shadow: 0 0 6px rgba(0,0,0,.08); border-radius: 6px; margin-bottom: 14px; overflow: hidden; }
.ls-track-order .head { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 14px; background: #f7f7f7; border-bottom: 1px solid #eee; }
.ls-track-order .head small { display: block; color: #777; font-size: 12px; }
.ls-track-order .status { background: var(--ls-accent); color: #fff; padding: 4px 12px; border-radius: 20px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.ls-track-order .items { padding: 8px 14px; }
.ls-track-order .item { display: flex; gap: 10px; align-items: center; padding: 6px 0; border-bottom: 1px dashed #eee; }
.ls-track-order .item:last-child { border-bottom: 0; }
.ls-track-order .item img { width: 44px; height: 44px; object-fit: cover; border-radius: 4px; }
.ls-track-order .item .name { font-size: 14px; font-weight: 600; }
.ls-track-order .item small { color: #777; }
.ls-track-order .foot { display: flex; justify-content: space-between; align-items: center; padding: 10px 14px; border-top: 1px solid #eee; }
.ls-track-order .foot .btn { background: #000; color: #fff; border-radius: 0; font-size: 13px; font-weight: 600; }

/* quick order popup above the chat widget */
.ls-qm { z-index: 100003; }
body:has(#ls-quick-modal.show) .modal-backdrop { z-index: 100002; }

/* checkout: the sticky confirm button replaces the mobile bottom bar */
body:has(.ls-checkout) .foot_bar { display: none; }
body:has(.ls-checkout) .ls-footer { margin-bottom: 0; }

/* ================================================================ RESPONSIVE HEADER FIX (2026-10-27) */
/* Prevent old header_search flex-grow from overriding Bootstrap grid */
.ls-main-header .ls-search { flex-grow: 0; }

/* On md (768–991 px): logo+actions fill first row, search below */
@media (min-width: 768px) and (max-width: 991px) {
    .ls-main-header .ls-search { margin-top: 6px; margin-bottom: 2px; }
    .ls-header-actions { justify-content: flex-end; }
    .ls-call { padding: 0 10px; font-size: 13px; height: 38px; gap: 4px; }
    .ls-cart-btn .icon { height: 38px; width: 38px; font-size: 17px; }
    .ls-cart-btn .icon::after { display: none; }
}

/* On lg (992–1199 px): all 3 cols in one row but tighter buttons */
@media (min-width: 992px) and (max-width: 1199px) {
    .ls-call { padding: 0 12px; font-size: 14px; gap: 5px; }
}

/* ================================================================ PDP PRICE COLOR */
.ls-pd .pro_price .current_price,
.ls-pd h4.current_price { color: var(--ls-accent) !important; }

/* ================================================================ PDP FIND IN STORE (outlined) */
.ls-pd .btn_submit .add_to_cart {
    background: transparent !important;
    color: #555 !important;
    border: 1.5px solid #bbb !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}
.ls-pd .btn_submit .add_to_cart:hover {
    border-color: #555 !important;
    color: #333 !important;
}
.ls-pd .btn_submit .add_to_cart i { display: inline !important; }

/* ================================================================ PDP SOCIAL ICONS – Instagram */
.ls-pd .ls-share .ms { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); }

/* Find in Store outlined button (liveshopping match) */
.ls-pd .btn_submit .ls-find-store {
    background: transparent !important;
    color: #555 !important;
    border: 1.5px solid #bbb !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 7px 16px !important;
    letter-spacing: .3px;
}
.ls-pd .btn_submit .ls-find-store:hover {
    border-color: #555 !important;
    color: #222 !important;
}
.ls-pd .btn_submit .ls-find-store i { display: inline !important; }

/* ── PDP Color swatches ───────────────────────────────── */
.ls-cs-label {
    position: relative;
    display: inline-block;
    cursor: pointer;
    border: 2px solid #e0e0e0;
    border-radius: 6px;
    overflow: hidden;
    transition: border-color .18s, box-shadow .18s;
}
.ls-cs-label img {
    width: 58px;
    height: 58px;
    object-fit: cover;
    display: block;
}
.ls-cs-label input { display: none; }
.ls-cs-label.ls-cs-active,
.ls-cs-label:has(input:checked) {
    border-color: var(--ls-accent, #fc630a);
    box-shadow: 0 0 0 2px rgba(252,99,10,.25);
}
.ls-cs-label.ls-cs-disabled {
    opacity: .45;
    cursor: not-allowed;
}
.ls-cs-label.ls-cs-disabled::after {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(-45deg, transparent 0, transparent 4px, rgba(0,0,0,.12) 4px, rgba(0,0,0,.12) 5px);
}

/* ── PDP Policy box background ────────────────────────── */
.ls-pd .ls-policy {
    background: #fff8f8;
    border: 1.5px dashed #e31b23;
    border-radius: 6px;
    padding: 14px;
    font-size: 13px;
}

/* ── PDP Brand / site logo ────────────────────────────── */
.ls-pd-brand img {
    max-height: 48px;
    max-width: 160px;
    object-fit: contain;
    margin: 6px auto;
    display: block;
}

/* ── PDP Review section cleanup ────────────────────────── */
.pro-desc-commnet-area .title { font-size: 16px; font-weight: 700; color: #222; margin-bottom: 12px; }
.pro-desc-commnet-area .comment-list { list-style: none; padding: 0; }
.pro-des-commend-respond .title { font-size: 16px; font-weight: 700; color: #222; margin-bottom: 12px; }
.woocommerce-tabs { background: #f9f9f9 !important; border-radius: 8px; padding: 20px; }
.description_tab .axil-btn.btn-bg-primary {
    background: var(--ls-accent);
    color: #fff;
    border: none;
    padding: 10px 28px;
    border-radius: 5px;
    font-weight: 600;
    cursor: pointer;
}
.description_tab .axil-btn.btn-bg-primary:hover { opacity: .88; }
.stars-box .star { font-size: 22px; color: #ccc; cursor: pointer; transition: color .15s; }
.stars-box .star.selected,
.stars-box .star:hover { color: #f5a623; }


/* ── PDP: Qty buttons + Order button (image 15 match) ── */
.quantityBtnDesign { display: flex; align-items: center; border: 1.5px solid #ddd; border-radius: 0; overflow: hidden; height: 44px; }
.quantityBtnDesign button.minus,
.quantityBtnDesign button.plus  { width: 42px; height: 44px; font-size: 20px; line-height: 1; border: none; background: #f5f5f5; color: #333; display: flex; align-items: center; justify-content: center; transition: background .15s; flex-shrink: 0; }
.quantityBtnDesign button.minus:hover,
.quantityBtnDesign button.plus:hover  { background: var(--ls-accent); color: #fff; }
.quantityBtnDesign input.quantity_value { height: 44px; min-width: 30px; text-align: center; border: none; border-left: 1px solid #ddd; border-right: 1px solid #ddd; font-size: 16px; font-weight: 700; }

.orderBtnDesign { height: 44px; font-size: 15px; font-weight: 700; padding: 0 20px; background: var(--ls-accent) !important; color: #fff !important; border-radius: 8px !important; border: none; }
.orderBtnDesign:hover { opacity: .88; }

/* ── PDP: Find in Store outline link ── */
.ls-find-store { display: block; width: 100%; text-align: center; padding: 9px 0; border: 2px solid var(--ls-accent); border-radius: 8px; color: var(--ls-accent); font-size: 14px; font-weight: 700; background: transparent; transition: background .18s, color .18s; margin-top: 10px; text-decoration: none; }
.ls-find-store:hover { background: var(--ls-accent); color: #fff; }
