@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@700;800&display=swap');

.config{
	position: fixed;
	top: 50px;
	left: -200px;
	-webkit-transition: 0.3s ease;
  	transition: 0.3s ease;
  	z-index: 999;
}

.config-options{
	float: left;
	width: 200px;
	background-color: #f5f5f5;
	padding: 15px 10px;
	border: 1px solid #333;
	line-height: 24px;
}

.config-options h4{
	margin-bottom: 10px;
}

.config-options .list-unstyled{
	margin-bottom: 20px;
}

.config-options .list-unstyled:last-child{
	margin-bottom: 0;
}

.config-options .list-unstyled > li > a{
	display: block;
	padding-left: 5px;
}

.config-options .list-unstyled > li > a:hover{
	background-color: #fff;
	text-decoration:none;
}

.show-theme-options{
	float: left;
	padding:10px;/* 0 10px;*/
	font-size: 30px;
	display: block;
	background-color: #333;
	color: #fff;
}

.show-theme-options:hover,.show-theme-options:focus{
	text-decoration:none;
	color:#fff;
}

.config.open{
	left: 0;
}

.config .dropdown .dropdown-toggle{
	padding: 6px 12px;
}

.config .dropdown .dropdown-toggle:after{
	content: none;
}

.config { display: none !important; }

/* Product details */
.single-product .quantity-container > .row { align-items: center; }
.single-product .quantity-container .quantity-add-row { align-items: center; }
.single-product .quantity-container .quantity-add-row .label { margin: 0; line-height: 35px; }
.single-product .quantity-container .qty-and-cart-col { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.single-product .quantity-container .qty-add-form { display: inline-flex; align-items: center; margin: 0; gap: 10px; }
.single-product .quantity-container .qty-add-form .btn-add-cart,
.single-product .quantity-container .qty-add-form .btn-goto-cart { margin: 0; height: 38px; min-height: 38px; line-height: 36px; padding: 0 18px; font-size: 14px; box-sizing: border-box; transition: background 0.2s, border-color 0.2s, color 0.2s; }
.single-product .quantity-container .qty-add-form .btn-add-cart { background: #6c757d; color: #fff; border: 1px solid #6c757d; border-radius: 4px; font-weight: 600; }
.single-product .quantity-container .qty-add-form .btn-add-cart:hover { background: #00b29c; border-color: #00b29c; color: #fff; }
.single-product .quantity-container .qty-add-form .btn-goto-cart { text-decoration: none; display: inline-flex; align-items: center; justify-content: center; background: #6c757d; color: #fff; border: 1px solid #6c757d; border-radius: 4px; font-weight: 600; }
.single-product .quantity-container .qty-add-form .btn-goto-cart:hover { background: #00b29c; border-color: #00b29c; color: #fff; text-decoration: none; }
.single-product .quantity-container .qty-add-form .btn-primary { min-height: 38px; }

/* Date text – primary color */
.review .review-title .date,
.review .review-title .date span,
.product-reviews .date,
.product-reviews .date span,
.order-history-table .col-date,
.body-content .date { color: #00b29c !important; }

/* Product names/prices */
.product .product-info .name, .category-product .product .product-info .name, .homepage-container .product .product-info .name,
.hot-deals .product-info .name, .search-result-container .product .product-info .name, .upsell-product .product .product-info .name,
.sidebar-carousel .product .product-info .name { margin-bottom: 0.4em !important; }
.product .product-info .description, .search-result-container .product .product-info .description { margin: 0 !important; padding: 0 !important; min-height: 0 !important; }
.product .product-info .product-price, .search-result-container .product .product-info .product-price { margin-top: 3px !important; }

/* Product names truncate - font 4px larger */
.product .product-info .name, .search-result-container .product-info .name { container-type: inline-size; min-height: 1.4em; line-height: 1.35; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: clamp(15px, 5cqi, 20px) !important; }
.product .product-info .name a, .search-result-container .product-info .name a { display: block; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Product names in primary color across all pages */
.product .product-info .name, .product .product-info .name a,
.category-product .product .product-info .name a, .homepage-container .product .product-info .name a,
.hot-deals .product-info .name a, .search-result-container .product .product-info .name a, .search-result-container .product-info .name a,
.upsell-product .product .product-info .name a, .sidebar-carousel .product .product-info .name a,
.single-product .product-info .name, .single-product .upsell-product .product .product-info .name a,
.random-product-item .name a,
.shopping-cart .shopping-cart-table table tbody tr .cart-product-name-info h4 a,
.body-content .my-wishlist-page .my-wishlist table tbody .product-name a,
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .name a,
.best-seller .product .product-info .name a, .special-offer .product .product-info .name a,
.seller-product .products .product .product-info .name a { color: #00b29c !important; }

/* Product names font +4px on all pages */
.product .product-info .name, .product .product-info .name a,
.category-product .product .product-info .name a, .homepage-container .product .product-info .name a,
.hot-deals .product-info .name a, .search-result-container .product .product-info .name a, .search-result-container .product-info .name a,
.upsell-product .product .product-info .name a, .sidebar-carousel .product .product-info .name a,
.best-seller .product .product-info .name a, .special-offer .product .product-info .name a,
.seller-product .products .product .product-info .name a { font-size: 20px !important; }
.single-product .product-info .name, .single-product .upsell-product .product .product-info .name a { font-size: 24px !important; }
.random-product-item .name a { font-size: 17px !important; }
.shopping-cart .shopping-cart-table table tbody tr .cart-product-name-info h4,
.shopping-cart .shopping-cart-table table tbody tr .cart-product-name-info h4 a { font-size: 20px !important; }
.body-content .my-wishlist-page .my-wishlist table tbody .product-name,
.body-content .my-wishlist-page .my-wishlist table tbody .product-name a { font-size: 24px !important; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .name,
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .name a { font-size: 15px !important; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .name { margin: 0 !important; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .cart-item-qty { margin: 0 !important; padding: 0 !important; line-height: 1.2; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary { margin-bottom: 12px !important; }
.top-cart-row .dropdown-cart .dropdown-menu li:last-child .cart-item.product-summary { margin-bottom: 0 !important; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .row { display: flex; align-items: center; margin: 0 -7px; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .row > [class*="col-"] { padding-left: 7px; padding-right: 7px; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .image { margin: 0; line-height: 0; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .image img { display: block; vertical-align: middle; }

.product .product-info .name a:hover, .product .product-info .name a:focus,
.hot-deals .product-info .name a:hover, .homepage-container .product .product-info .name a:hover,
.shopping-cart .shopping-cart-table table tbody tr .cart-product-name-info h4 a:hover,
.body-content .my-wishlist-page .my-wishlist table tbody .product-name a:hover,
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .name a:hover { color: #009683 !important; }

/* Wishlist page - larger product images */
.body-content .my-wishlist-page .my-wishlist table tbody .wishlist-product-image { width: 180px; vertical-align: middle !important; }
.body-content .my-wishlist-page .my-wishlist table tbody .wishlist-product-image img { width: 160px; height: 200px; object-fit: cover; object-position: center; display: block; }

/* Hide review stars on all product displays */
.product .rating, .product .rateit-small, .product-info .rating, .product-info .star-rating,
.rateit, .rateit-small, .rating-reviews .rating, .rating-reviews .rateit-small,
.body-content .my-wishlist-page .my-wishlist .rating,
.shopping-cart .shopping-cart-table .rating, .cart-product-name-info .rating { display: none !important; }

/* Product discount badge - top right, green */
.product-discount-badge { position: absolute; top: 8px; right: 8px; background: #198754; color: #fff; font-size: 12px; font-weight: 700; padding: 4px 8px; border-radius: 4px; z-index: 2; }

/* Today's Deal badge – 5–10% off, rotated every 24h */
.todays-deal-badge { position: absolute; top: 8px; left: 8px; background: #c41e3a; color: #fff; font-size: 11px; font-weight: 700; padding: 4px 8px; border-radius: 4px; z-index: 2; }
.todays-deal-badge-detail { position: static; display: inline-block; margin-bottom: 4px; }

/* Today's Deals strip on shop index */
.todays-deals-section { margin-bottom: 20px; }
.todays-deals-section .section-title { margin-bottom: 12px; font-size: 18px; }
.todays-deals-strip { display: flex; flex-wrap: wrap; gap: 16px; justify-content: flex-start; align-items: flex-start; }
.todays-deals-item { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #333; width: 120px; flex-shrink: 0; transition: transform 0.2s; }
.todays-deals-item:hover { color: #00b29c; transform: translateY(-2px); text-decoration: none; }
.todays-deals-img { width: 80px; height: 80px; border-radius: 50%; overflow: hidden; background: #eee; }
.todays-deals-img img { width: 100%; height: 100%; object-fit: cover; }
.todays-deals-name { margin-top: 6px; font-size: 12px; font-weight: 600; text-align: center; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.todays-deals-off { font-size: 11px; color: #c41e3a; font-weight: 700; margin-top: 2px; }
.todays-deals-price { font-size: 13px; font-weight: 700; color: #00b29c; margin-top: 2px; }

/* Product "discount :" label – distinct color (pink) */
.product-discount-label { color: #c71585 !important; }
.product .product-image,
.random-product-item .product-image { position: relative; }

/* Heart wishlist button - lower right of product image */
.product-wishlist-btn { position: absolute; bottom: 10px; right: 10px; z-index: 5; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,0.95); border-radius: 50%; color: #d2ba33; box-shadow: 0 2px 8px rgba(0,0,0,0.15); text-decoration: none; cursor: pointer; transition: color 0.2s, background 0.2s, transform 0.2s; }
.product-wishlist-btn:hover { color: #00b29c; background: #fff; transform: scale(1.08); }
.product-wishlist-btn i { font-size: 18px; }
.product-wishlist-btn:focus { outline: none; color: #00b29c; }

/* Category / sub-category / search: keep wishlist over image (wrapping link must not be positioning context) */
.search-result-container .category-product .products > a,
.search-result-container .category-product .product > a { position: static !important; }
.search-result-container .product .product-image,
.category-product .product .product-image { position: relative !important; }
.search-result-container .product .product-image .product-wishlist-btn,
.category-product .product .product-image .product-wishlist-btn { position: absolute !important; bottom: 10px !important; right: 10px !important; top: auto !important; left: auto !important; width: 36px !important; height: 36px !important; display: flex !important; align-items: center !important; justify-content: center !important; }

/* Wishlist toast - popup message, no redirect */
.wishlist-toast { position: fixed; top: 24px; left: 50%; transform: translateX(-50%) translateY(-120%); z-index: 9999; background: #00b29c; color: #fff; padding: 14px 24px; border-radius: 8px; box-shadow: 0 4px 20px rgba(0,0,0,0.2); font-size: 15px; font-weight: 500; pointer-events: none; opacity: 0; visibility: hidden; transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s linear 0.3s; }
.wishlist-toast.show { transform: translateX(-50%) translateY(0); opacity: 1; visibility: visible; transition: transform 0.3s ease, opacity 0.3s ease; }

/* Product images */
.product .product-image .image, .search-result-container .product .product-image .image { position: relative; overflow: hidden; background: #eee; border-radius: 8px 8px 0 0; }
.product .product-image .image img, .search-result-container .product .product-image .image img { width: 100%; height: 236px; object-fit: cover; object-position: center; display: block; transition: transform 0.3s ease; }
.product .product-image .image:hover img, .search-result-container .product .product-image .image:hover img { transform: scale(1.06); }

/* Slight rounded corners on product displays (padding/margin unchanged) */
.product { border-radius: 8px; }
.random-product-item .product-image { border-radius: 8px; overflow: hidden; }
.random-product-item .product-image img { transition: transform 0.3s ease; }
.random-product-item .product-image:hover img { transform: scale(1.06); }
.body-content .my-wishlist-page .my-wishlist table tbody .wishlist-product-image img { border-radius: 8px; }
.shopping-cart .shopping-cart-table table tbody tr .cart-image .entry-thumbnail,
.shopping-cart .shopping-cart-table table tbody tr .cart-image img { border-radius: 8px; }
.single-product .product-image .image, .single-product .gallery-holder .image { border-radius: 8px; overflow: hidden; }

/* Fitnextt company products – full primary bg and light text (index + sub-category grid) */
.product-fitnextt .product { background: #00b29c !important; color: #fff; border-radius: 8px; overflow: hidden; }
.product-fitnextt .product .product-image,
.product-fitnextt .product .product-image .image { background: #00b29c !important; }
.product-fitnextt .product .product-info { background: transparent !important; color: #fff !important; }
.product-fitnextt .product .product-info .name,
.product-fitnextt .product .product-info .name a,
.product-fitnextt .product .product-info h3.name,
.product-fitnextt .product .product-info h3.name a { color: #fff !important; }
.product-fitnextt .product .product-info .name a:hover,
.product-fitnextt .product .product-info .name a:focus,
.product-fitnextt .product .product-info h3.name a:hover,
.product-fitnextt .product .product-info h3.name a:focus { color: rgba(255,255,255,0.9) !important; }
.product-fitnextt .product .product-info .description { color: rgba(255,255,255,0.85) !important; }
.product-fitnextt .product .product-price,
.product-fitnextt .product .product-price .price,
.product-fitnextt .product .product-price .price-before-discount { color: rgba(255,255,255,0.9) !important; }
.product-fitnextt .product .product-price .product-discount-label { color: #ffc0e0 !important; }
.product-fitnextt .product a { color: #fff; }
.product-fitnextt .product .product-image .product-wishlist-btn { background: rgba(255,255,255,0.95); color: #00b29c; }
.product-fitnextt .product .product-image .product-wishlist-btn:hover { background: #fff; color: #009585; }
.product-fitnextt .product .product-discount-badge { background: #d2ba33; color: #fff; }

/* Shop index page – all product items yellow background */
.shop-index-page .category-product .product { background: #fff9c4 !important; color: #333; border-radius: 8px; overflow: hidden; }
.shop-index-page .category-product .product .product-image,
.shop-index-page .category-product .product .product-image .image { background: #fff9c4 !important; }
.shop-index-page .category-product .product .product-info { background: transparent !important; color: #333 !important; }
.shop-index-page .category-product .product .product-info .name,
.shop-index-page .category-product .product .product-info .name a,
.shop-index-page .category-product .product .product-info h3.name,
.shop-index-page .category-product .product .product-info h3.name a { color: #333 !important; }
.shop-index-page .category-product .product .product-info .name a:hover,
.shop-index-page .category-product .product .product-info h3.name a:hover { color: #1a1a1a !important; }
.shop-index-page .category-product .product .product-info .description { color: #555 !important; }
.shop-index-page .category-product .product .product-price,
.shop-index-page .category-product .product .product-price .price,
.shop-index-page .category-product .product .product-price .price-before-discount { color: #333 !important; }
.shop-index-page .category-product .product .product-price .product-discount-label { color: #c71585 !important; }
.shop-index-page .category-product .product a { color: #333; }
.shop-index-page .category-product .product-fitnextt .product,
.shop-index-page .category-product .product-fitnextt .product .product-image,
.shop-index-page .category-product .product-fitnextt .product .product-image .image { background: #fff9c4 !important; }
.shop-index-page .category-product .product-fitnextt .product .product-info .name,
.shop-index-page .category-product .product-fitnextt .product .product-info .name a,
.shop-index-page .category-product .product-fitnextt .product .product-info h3.name,
.shop-index-page .category-product .product-fitnextt .product .product-info h3.name a,
.shop-index-page .category-product .product-fitnextt .product .product-price,
.shop-index-page .category-product .product-fitnextt .product .product-price .price,
.shop-index-page .category-product .product-fitnextt .product .product-price .price-before-discount { color: #333 !important; }
.shop-index-page .category-product .product-fitnextt .product .product-price .product-discount-label { color: #c71585 !important; }
.shop-index-page .category-product .product-fitnextt .product a { color: #333; }

/* Sub-category page: only Fitnextt products get primary background; others stay yellow */
.sub-category-page.shop-index-page .category-product .product-fitnextt .product,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-image,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-image .image { background: #00b29c !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info { background: transparent !important; color: #fff !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info .name,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info .name a,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info h3.name,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info h3.name a { color: #fff !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info .name a:hover,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info .name a:focus,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info h3.name a:hover,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info h3.name a:focus { color: rgba(255,255,255,0.9) !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-info .description { color: rgba(255,255,255,0.85) !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-price,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-price .price,
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-price .price-before-discount { color: rgba(255,255,255,0.9) !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-price .product-discount-label { color: #ffc0e0 !important; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product a { color: #fff; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-image .product-wishlist-btn { background: rgba(255,255,255,0.95); color: #00b29c; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-image .product-wishlist-btn:hover { background: #fff; color: #009585; }
.sub-category-page.shop-index-page .category-product .product-fitnextt .product .product-discount-badge { background: #d2ba33; color: #fff; }

/* FITNEXTT HEROES section - primary background */
.heroes-section-hidden { display: none !important; }
.heroes-products-scroll { padding: 20px 0 15px; margin-top: 20px; margin-bottom: 0; overflow: hidden; }
.heroes-products-scroll .random-products-scroll-wrap { display: flex; gap: 20px; overflow-x: auto; padding: 10px 50px 8px 50px !important; -ms-overflow-style: none; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.heroes-products-scroll .random-products-scroll-wrap::-webkit-scrollbar { display: none; }
.heroes-products-scroll .section-title { color: #00b29c !important; margin-bottom: 15px; font-size: 26px; font-weight: 700; text-align: center; }
.heroes-products-scroll .scroll-arrow { background: #fff; color: #333; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.heroes-products-scroll .scroll-arrow:hover { background: #00b29c; color: #fff; }

/* Heroes section - 4 products visible at a time, smaller product displays; fixed width so strip overflows and can scroll */
.heroes-products-scroll .random-product-item { flex: 0 0 220px; min-width: 220px; }
.heroes-products-scroll .random-product-item .product-image img { height: 180px; }
.heroes-products-scroll .random-product-item .name,
.heroes-products-scroll .random-product-item .name a { font-size: 13px !important; }
.heroes-products-scroll .random-product-item .product-price,
.heroes-products-scroll .random-product-item .product-price .price,
.heroes-products-scroll .random-product-item .product-discount-label { font-size: 12px !important; }
.heroes-products-scroll .random-product-item .product-wishlist-btn { width: 30px; height: 30px; right: 6px; bottom: 6px; }
.heroes-products-scroll .random-product-item .product-wishlist-btn i { font-size: 14px; }
.heroes-products-scroll .random-product-item .product-discount-badge { font-size: 10px; padding: 2px 6px; }

/* Horizontal scroll sections: Explore more (index), Related Products (product-details) */
.random-products-scroll { margin-top: 4px; }
.random-products-scroll .section-title { margin-bottom: 15px; font-size: 18px; }
.todays-deals-scroll { margin-top: 32px; }
.todays-deals-scroll .section-title { color: #c41e3a !important; }
.todays-deals-scroll .product-action-todays-deal { margin-top: 8px; }
.todays-deals-scroll .add-cart-todays-deal { display: inline-block; padding: 6px 14px; font-size: 13px; font-weight: 600; background: #c41e3a; color: #fff; border-radius: 4px; text-decoration: none; transition: background .2s; }
.todays-deals-scroll .add-cart-todays-deal:hover { background: #a01830; color: #fff; text-decoration: none; }

/* Lightning Deals: 4 products, 10–15% off, 30-min countdown */
.lightning-deals-section { margin-top: 20px; margin-bottom: 8px; padding: 16px 0; background: linear-gradient(135deg, #fff8f0 0%, #fff0e8 100%); border-radius: 8px; border: 1px solid rgba(255,140,0,0.2); }
.lightning-deals-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; padding: 0 4px; }
.lightning-deals-title { margin: 0; font-size: 20px; font-weight: 700; color: #e65100 !important; }
.lightning-deals-countdown { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; background: #e65100; color: #fff; border-radius: 6px; font-weight: 700; font-size: 15px; }
.lightning-deals-countdown .countdown-label { font-size: 12px; opacity: 0.95; text-transform: uppercase; letter-spacing: 0.05em; }
.lightning-deals-countdown .countdown-value { font-variant-numeric: tabular-nums; min-width: 4.5em; }
.lightning-deals-countdown.countdown-expired { background: #666; }
.lightning-deals-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 991px) { .lightning-deals-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .lightning-deals-grid { grid-template-columns: 1fr; } }
.lightning-deal-item .product { padding: 1em; margin: 0; background: #fff; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,.08); transition: box-shadow .2s; }
.lightning-deal-item .product:hover { box-shadow: 0 4px 14px rgba(0,0,0,.12); }
.lightning-deal-item .product-image { margin-bottom: 8px; background: #f5f5f5; overflow: hidden; display: block; padding: 0; position: relative; border-radius: 8px 8px 0 0; }
.lightning-deal-item .product-image a:not(.product-wishlist-btn) { display: block; width: 100%; }
.lightning-deal-item .product-image img { width: 100%; height: 200px; object-fit: cover; object-position: center; display: block; }
.lightning-deal-badge { position: absolute; top: 8px; left: 8px; background: #e65100; color: #fff; font-size: 12px; font-weight: 700; padding: 4px 8px; border-radius: 4px; z-index: 2; }
.lightning-deal-badge-detail { position: static; display: inline-block; margin-bottom: 8px; }
.lightning-countdown-detail { margin-top: 8px; margin-bottom: 8px; }
.lightning-deal-note { margin: 4px 0 0 0; font-size: 13px; color: #e65100; font-weight: 600; }
.lightning-deal-item .name { font-size: 14px; margin-bottom: 4px; line-height: 1.3; }
.lightning-deal-item .name a { color: #00b29c; }
.lightning-deal-item .product-price .price { font-weight: 700; color: #e65100; font-size: 16px; }
.lightning-deal-item .product-price .price-before-discount { font-size: 12px; color: #666; text-decoration: line-through; }

.random-products-scroll-inner { width: 100%; position: relative; }
.random-products-scroll .scroll-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border-radius: 50%; border: none; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.15); cursor: pointer; z-index: 2; color: #333; font-size: 16px; transition: background .2s, box-shadow .2s; }
.random-products-scroll .scroll-arrow:hover { background: #00b29c; color: #fff; box-shadow: 0 2px 12px rgba(0,178,156,.4); }
.random-products-scroll .scroll-arrow-left { left: -10px; }
.random-products-scroll .scroll-arrow-right { right: -10px; }
.random-products-scroll-wrap { display: flex; gap: 20px; overflow-x: auto; padding: 10px 0 15px; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; width: 100%; }
.random-products-scroll .random-product-item { flex: 0 0 calc(25% - 15px); min-width: 200px; scroll-snap-align: start; }
.random-products-scroll .random-product-item .product { padding: 1em; margin-bottom: 0; background-color: #eee; border-radius: 8px; }
.random-products-scroll .random-product-item .product-image { margin-bottom: 8px; background: #f5f5f5; overflow: hidden; display: block; padding: 0; position: relative; border-radius: 8px 8px 0 0; }
.random-products-scroll .random-product-item .product-image a:not(.product-wishlist-btn) { display: block; width: 100%; }
.random-products-scroll .random-product-item .product-image img { width: 100%; height: 256px; object-fit: cover; object-position: center; display: block; }
.random-products-scroll .random-product-item .name { font-size: 13px; margin-bottom: 5px; line-height: 1.3; }
.random-products-scroll .random-product-item .name a { color: #00b29c; }
.random-products-scroll-wrap::-webkit-scrollbar { height: 6px; }
.random-products-scroll-wrap::-webkit-scrollbar-track { background: #f1f1f1; }
.random-products-scroll-wrap::-webkit-scrollbar-thumb { background: #ccc; border-radius: 3px; }

/* Hero banner (index, category, sub-category) */
.body-content.outer-top-xs { margin-top: 8px; }
.index-hero-banner { width: 100%; overflow: hidden; min-height: 55vh; margin-bottom: 20px; margin-top: 0; padding-top: 0; border-radius: 8px; }
.index-hero-banner img { width: 100%; height: 100%; min-height: 55vh; display: block; object-fit: cover; border-radius: 8px; }

/* banner_generate: same size as banner, big heading + 3 product circles */
.banner_generate { width: 100%; min-height: 55vh; max-height: 55vh; margin-bottom: 8px; border-radius: 8px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; padding: 10px 20px 40px; box-sizing: border-box; position: relative; overflow: hidden; background-color: #f0f7f6; background-image: radial-gradient(circle at 10% 20%, rgba(0,178,156,0.12) 0%, transparent 45%), radial-gradient(circle at 90% 80%, rgba(210,186,51,0.1) 0%, transparent 45%), radial-gradient(circle at 50% 50%, rgba(0,178,156,0.06) 0%, transparent 55%), repeating-radial-gradient(circle at 50% 50%, transparent 0, transparent 28px, rgba(0,178,156,0.04) 28px, rgba(0,178,156,0.04) 32px); }
.banner_generate::before { content: ""; position: absolute; top: -50%; left: -20%; width: 60%; height: 120%; background: radial-gradient(ellipse at center, rgba(210,186,51,0.08) 0%, transparent 70%); pointer-events: none; z-index: 0; }
.banner_generate::after { content: ""; position: absolute; bottom: -30%; right: -15%; width: 50%; height: 80%; background: radial-gradient(ellipse at center, rgba(0,178,156,0.1) 0%, transparent 70%); pointer-events: none; z-index: 0; }
.banner_generate-heading { position: relative; z-index: 1; font-family: "Nunito", "Comic Sans MS", sans-serif; font-size: clamp(28px, 4vw, 42px); font-weight: 700; color: #333; margin: 0 0 4px 0; text-align: center; text-transform: uppercase; letter-spacing: 0.02em; flex-shrink: 0; }
.banner_generate-tagline { position: relative; z-index: 1; font-size: clamp(15px, 2vw, 18px); font-weight: 500; color: #555; margin: 0 0 32px; text-align: center; line-height: 1.4; flex-shrink: 0; }
.banner_generate-circles { position: relative; z-index: 1; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; gap: 60px; max-width: 1060px; margin-left: auto; margin-right: auto; flex-shrink: 0; }
.banner_generate-circle { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #333; transition: transform 0.2s; }
.banner_generate-circle:hover { transform: translateY(-4px); }
/* White border: outline + box-shadow so it's visible on any background */
.banner_generate .banner_generate-circle-img { outline: 4px solid #00b29c; outline-offset: 0; box-shadow: 0 0 0 4px #00b29c, 0 0 0 5px rgba(0,0,0,.1), 0 4px 20px rgba(0,0,0,.12) !important; }
.banner_generate-circle-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.banner_generate-circle-name { margin-top: 12px; font-size: 14px; font-weight: 600; text-align: center; line-height: 1.3; max-width: 220px; }
.banner_generate-circle:hover .banner_generate-circle-name { color: #00b29c; }
.banner_generate-heading { font-family: "Nunito", "Comic Sans MS", sans-serif; font-size: clamp(28px, 4vw, 42px); font-weight: 700; color: #333; margin: 0 0 4px 0; text-align: center; text-transform: uppercase; letter-spacing: 0.02em; flex-shrink: 0; }
.banner_generate-tagline { font-size: clamp(15px, 2vw, 18px); font-weight: 500; color: #555; margin: 0 0 32px; text-align: center; line-height: 1.4; flex-shrink: 0; }
.banner_generate-circles { display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; gap: 60px; max-width: 1060px; margin-left: auto; margin-right: auto; flex-shrink: 0; }
.banner_generate-circle { display: flex; flex-direction: column; align-items: center; text-decoration: none; color: #333; transition: transform 0.2s; }
.banner_generate-circle:hover { transform: translateY(-4px); }
.banner_generate-circle-img { width: 220px; height: 220px; border-radius: 50%; overflow: hidden; flex-shrink: 0; background: #eee; }
.banner_generate-circle-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.banner_generate-circle-name { margin-top: 12px; font-size: 14px; font-weight: 600; text-align: center; line-height: 1.3; max-width: 220px; }
.banner_generate-circle:hover .banner_generate-circle-name { color: #00b29c; }

/* Subcategory banner */
.subcategory-banner .item { height: auto; min-height: 0; }
.subcategory-banner .item .image { display: block; line-height: 0; }
.subcategory-banner .item .image img { width: 100%; height: auto; display: block; vertical-align: top; }
.subcategory-banner { margin-bottom: 3px; }

/* Products align top with sidebar */
.body-content .row.outer-bottom-sm { align-items: flex-start; }
.body-content .search-result-container .category-product.inner-top-vs { padding-top: 0 !important; }
.body-content .search-result-container { padding-top: 0; }

/* Don’t clip the product row – Bootstrap row extends into container padding; clipping was cutting the 3rd product */

/* Sort by bar – after banner, before product grid */
.sort-by-bar-wrap { display: flex; justify-content: flex-end; margin-top: 4px !important; margin-bottom: 4px !important; }
.sort-by-bar-wrap.outer-top-xs { margin-top: 4px !important; }
.sort-by-bar-wrap.outer-bottom-xs { margin-bottom: 4px !important; }
.sort-by-bar { display: inline-block; width: max-content; background: #f8f9fa; border: 1px solid #e9ecef; border-radius: 6px; padding: 6px 16px; }
.sort-by-inner { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.sort-by-icon { color: #00b29c; font-size: 16px; }
.sort-by-label { margin: 0; font-size: 14px; font-weight: 600; color: #333; }
.sort-by-select { padding: 4px 10px; border: 1px solid #dee2e6; border-radius: 6px; font-size: 13px; color: #333; background: #fff; min-width: 180px; cursor: pointer; }
.sort-by-select:hover, .sort-by-select:focus { border-color: #00b29c; outline: none; }

/* Shop by section - heading background & font sizes */
.sidebar .sidebar-module-container .section-title { background: #d2ba33 !important; color: #FFFFFF !important; padding: 15px 17px !important; border-bottom: none !important; }
.sidebar .sidebar-module-container .sidebar-widget .widget-header .widget-title { color: #00b29c !important; font-size: 17px !important; }
.sidebar .sidebar-module-container .sidebar-widget .sidebar-widget-body .accordion .accordion-group .accordion-heading .accordion-toggle { font-size: 16px !important; }
.sidebar .side-menu .head { font-size: 21px !important; }
.sidebar .side-menu nav .nav > li > a { font-size: 16px !important; }

/* Hot deals (product-details sidebar) – image between the two arrows */
.sidebar-widget.hot-deals { position: relative; }
.sidebar-widget.hot-deals .section-title { padding-right: 0; min-height: 50px; display: flex; align-items: center; box-sizing: border-box; line-height: 1.3; }
.sidebar-widget.hot-deals .custom-carousel.owl-carousel { position: relative; padding-top: 12px; padding-left: 40px; padding-right: 40px; min-height: 120px; box-sizing: border-box; }
.sidebar-widget.hot-deals .custom-carousel .owl-wrapper-outer { margin: 0; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls { position: absolute; top: 12px; left: 0; right: 0; bottom: auto; height: 150px; width: 100% !important; margin: 0; display: block !important; pointer-events: none; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev,
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next { position: absolute !important; top: 50% !important; transform: translateY(-50%); width: 28px; height: 28px; margin: 0 !important; flex-shrink: 0; border-radius: 6px; background: #00b29c; display: flex; align-items: center; justify-content: center; pointer-events: auto; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev { left: 6px !important; right: auto !important; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next { right: 6px !important; left: auto !important; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev:before,
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next:before { position: static; left: auto; top: auto; transform: none; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev:before { margin: 0; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next:before { margin: 0; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev:hover,
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next:hover { background: #009585; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-prev:before { content: "\f104"; font-family: fontawesome; font-size: 14px; color: #fff; }
.sidebar-widget.hot-deals .custom-carousel .owl-controls .owl-next:before { content: "\f105"; font-family: fontawesome; font-size: 14px; color: #fff; }

/* User name dropdown - 3 columns */
.user-name-dropdown .dropdown-menu { min-width: 400px; padding: 0; }
.user-dropdown-cols { display: flex; padding: 15px 0; }
.user-dropdown-col { flex: 1; padding: 0 20px; border-right: 1px solid #eee; }
.user-dropdown-col:last-child { border-right: none; }
.user-dropdown-col h5 { margin: 0 0 10px; font-size: 13px; font-weight: 700; color: #333; text-transform: uppercase; }
.user-dropdown-col a { display: block; padding: 4px 0; font-size: 13px; color: #555; }
.user-dropdown-col a:hover { color: #00b29c; text-decoration: none; }

/* Logo SHOP text */
.logo a { display: flex; align-items: flex-end; }
.logo .logo-shop { margin-left: 10px; font-size: 2.4em; font-weight: 700; color: #00b29c; line-height: 1; padding-bottom: 2px; }

/* Header centred, larger font – cart aligned with Track Order button */
.main-header .row { display: flex; justify-content: center; align-items: center; }
.main-header .row > .top-cart-row { padding-right: 0; }
.main-header .logo-holder { display: flex; align-items: center; justify-content: center; }
.main-header .top-search-holder { display: flex; align-items: center; justify-content: center; width: 100%; }
.main-header .top-cart-row { display: flex; align-items: center; justify-content: flex-end; max-width: 100%; min-width: 0; }
.main-header .top-cart-row .dropdown-cart { max-width: 100%; width: fit-content; }
.main-header .top-cart-row .dropdown-cart .lnk-cart { width: fit-content; box-sizing: border-box; overflow: visible; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner { min-width: 0; display: flex; align-items: center; flex-wrap: nowrap; overflow: visible; position: relative; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .total-price-basket,
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .basket,
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .basket-item-count { float: none; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .basket { position: relative; order: 2; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .basket-item-count { position: static; order: 1; margin-right: 4px; width: 18px; height: 18px; min-width: 18px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; align-self: center; line-height: 1; border-radius: 50%; font-size: 11px; }
.main-header .top-cart-row .dropdown-cart .dropdown-menu { right: 0; left: auto; font-size: 12px !important; }
.top-cart-row .dropdown-cart .dropdown-menu .cart-item.product-summary .price,
.top-cart-row .dropdown-cart .dropdown-menu .cart-total .text,
.top-cart-row .dropdown-cart .dropdown-menu .cart-total .price,
.top-cart-row .dropdown-cart .dropdown-menu .btn { font-size: 12px !important; }
.main-header .top-search-holder .search-area { width: 100%; max-width: 85%; border-radius: 8px; overflow: hidden; }
.main-header .top-search-holder .search-area .search-field { font-size: 16px; padding: 14px 16px; border-radius: 8px 0 0 8px; }
.main-header .top-search-holder .search-area .control-group { padding-right: 5px; align-items: center; }
.main-header .top-search-holder .search-area .search-button { width: 36px; height: 36px; min-width: 36px; min-height: 36px; padding: 0; margin: 0; border-radius: 8px; border: none; display: flex; align-items: center; justify-content: center; background: #f6f6f6; }
.main-header .top-search-holder .search-area .search-button:after { margin: 0; line-height: 1; }
.main-header .top-cart-row .dropdown-cart .lnk-cart { height: 36px; min-height: 36px; display: flex; align-items: center; box-sizing: border-box; border-radius: 8px; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner { height: 36px; padding: 0 4px; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .total-price-basket { padding: 0 2px; white-space: nowrap; flex-shrink: 0; }
.main-header .top-cart-row .dropdown-cart .lnk-cart .items-cart-inner .basket { padding: 0 4px; }
.main-header .total-price-basket .lbl { font-size: 12px; }
.main-header .total-price-basket .value { font-size: 13px; font-weight: 700; }
.main-header .basket-item-count .count { font-size: 11px; }
.main-header .logo img { height: 56px; }

/* Search bar - icon at end, full width of column */
.main-header .top-search-holder .search-area .control-group { display: flex; align-items: center; width: 100%; }
.search-area-live { position: relative; }
.search-live-results { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border: 1px solid #ddd; border-top: none; max-height: 320px; overflow-y: auto; z-index: 1000; box-shadow: 0 4px 12px rgba(0,0,0,.1); display: none; }
.search-live-results.active { display: block; }
.search-live-item { display: flex; align-items: center; padding: 10px 12px; border-bottom: 1px solid #eee; text-decoration: none; color: #333; }
.search-live-item:hover { background: #f8f9fa; }
.search-live-item img { width: 45px; height: 45px; object-fit: cover; margin-right: 12px; flex-shrink: 0; }
.search-live-item .sl-name { flex: 1; font-size: 14px; }
.search-live-item .sl-price { font-weight: 600; color: #00b29c; }
.search-live-empty { padding: 12px; color: #666; font-size: 14px; }
.main-header .top-search-holder .search-area .search-field { flex: 1; min-width: 0; width: 100%; }
.main-header .top-search-holder .search-area .search-button { flex-shrink: 0; }

/* Footer headings */
.footer .links-social .row { display: flex; align-items: flex-start; flex-wrap: wrap; }
.footer .links-social .contact-info .footer-logo, .footer .links-social .contact-timing .module-heading, .footer .links-social .contact-information .module-heading { min-height: 1.5em; margin-top: 10px; }
.footer .module-title, .footer .footer-logo h3, .footer .footer-logo .logo a h3 { color: #00b29c !important; white-space: nowrap; }

/* Cart remove cross */
.cart-remove-cross { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; color: #999; font-size: 18px; border-radius: 50%; transition: all 0.2s; }
.cart-remove-cross:hover { color: #c00; background: #fee; text-decoration: none; }
.shopping-cart-table .cart-sno { width: 48px; text-align: center; font-weight: 600; color: #555; vertical-align: middle; }

/* Grand total section – card style */
.cart-shopping-total .cart-total-card { background: #fff; border: 1px solid #e0e0e0; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,.06); }
.cart-shopping-total .cart-total-card-title { background: #00b29c; color: #fff; font-size: 16px; font-weight: 700; padding: 14px 18px; text-align: center; letter-spacing: 0.02em; }
.cart-shopping-total .cart-total-card-body { padding: 18px 18px 14px; }
.cart-shopping-total .cart-summary-items { margin-bottom: 4px; }
.cart-shopping-total .cart-summary-items-title { font-size: 13px; font-weight: 600; color: #555; margin-bottom: 10px; padding-bottom: 6px; border-bottom: 1px solid #eee; }
.cart-shopping-total .cart-summary-item-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; padding: 6px 0; font-size: 13px; color: #444; }
.cart-shopping-total .cart-summary-item-header { font-weight: 600; color: #333; padding: 4px 0 8px; border-bottom: 1px solid #e0e0e0; margin-bottom: 4px; }
.cart-shopping-total .cart-summary-item-sno { flex-shrink: 0; width: 2.2em; text-align: center; color: #666; }
.cart-shopping-total .cart-summary-item-header .cart-summary-item-sno { color: #333; }
.cart-shopping-total .cart-summary-item-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cart-shopping-total .cart-summary-item-qty { flex-shrink: 0; color: #666; width: 2.5em; text-align: center; }
.cart-shopping-total .cart-summary-item-header .cart-summary-item-qty { color: #333; }
.cart-shopping-total .cart-summary-item-amount { flex-shrink: 0; font-weight: 600; color: #333; min-width: 4em; text-align: right; }
.cart-shopping-total .cart-summary-item-header .cart-summary-item-amount { font-weight: 600; }
.cart-shopping-total .cart-total-row { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; font-size: 14px; color: #444; }
.cart-shopping-total .cart-total-row-gst { color: #666; font-size: 13px; }
.cart-shopping-total .cart-total-label { font-weight: 500; }
.cart-shopping-total .cart-total-value { font-weight: 600; color: #333; }
.cart-shopping-total .cart-total-divider { height: 1px; background: linear-gradient(to right, transparent, #ddd, transparent); margin: 12px 0 10px; }
.cart-shopping-total .cart-total-row-grand { padding: 12px 0 4px; font-size: 17px; font-weight: 700; }
.cart-shopping-total .cart-total-grand-value { font-size: 18px; color: #00b29c; }
.cart-shopping-total .cart-total-card-footer { padding: 16px 18px 20px; background: #f8f9fa; border-top: 1px solid #eee; }
.cart-shopping-total .cart-checkout-btn-styled { padding: 12px 20px; font-size: 15px; font-weight: 600; border-radius: 8px; background: #00b29c; border-color: #00b29c; }
.cart-shopping-total .cart-checkout-btn-styled:hover { background: #009a87; border-color: #009a87; }

/* Billing / Shipping address section – primary header + rounded corners */
.shopping-cart .estimate-ship-tax table { border-radius: 10px; overflow: hidden; border-collapse: separate; border-spacing: 0; }
.shopping-cart .estimate-ship-tax table thead tr th { background: #00b29c !important; color: #fff !important; border-color: #00b29c !important; font-weight: 700; font-size: 15px; padding: 14px 15px; }
.shopping-cart .estimate-ship-tax table thead tr th:first-child { border-top-left-radius: 10px; }
.shopping-cart .estimate-ship-tax table thead tr th:last-child { border-top-right-radius: 10px; }
.shopping-cart .estimate-ship-tax table tbody tr:last-child td:first-child { border-bottom-left-radius: 10px; }
.shopping-cart .estimate-ship-tax table tbody tr:last-child td:last-child { border-bottom-right-radius: 10px; }
.shopping-cart .estimate-ship-tax table thead tr th .estimate-title { color: #fff; }
.shopping-cart .estimate-ship-tax table thead tr th .estimate-title-guest { font-weight: 400; opacity: 0.95; font-size: 0.9em; }
.cart-guest-error { margin-bottom: 12px; }
.cart-guest-error a { color: #fff; text-decoration: underline; }
.same-as-billing-wrap { margin-bottom: 14px; padding-bottom: 10px; border-bottom: 1px solid #eee; }
.same-as-billing-wrap .checkbox-inline { font-weight: 500; color: #333; }
.same-as-billing-wrap input[type="checkbox"] { margin-right: 6px; }
/* GST number invalid state – red border, no alert */
input.gst-invalid { border-color: #dc3545 !important; box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
input.gst-invalid:focus { border-color: #dc3545 !important; box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
/* Login/register email invalid state */
input.email-invalid { border-color: #dc3545 !important; box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
input.email-invalid:focus { border-color: #dc3545 !important; box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }
/* Login: Verify email button – visible background and text */
.email-validate-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.email-validate-wrap .form-control { flex: 1; min-width: 200px; }
.email-validate-btn {
	flex-shrink: 0;
	background: #00b29c !important;
	color: #fff !important;
	border: 1px solid #009a87 !important;
	font-weight: 600;
	padding: 8px 18px;
	border-radius: 6px;
	cursor: pointer;
}
.email-validate-btn:hover:not(:disabled) {
	background: #009a87 !important;
	color: #fff !important;
	border-color: #008f7c !important;
}
.email-validate-btn:disabled {
	background: #b0b0b0 !important;
	color: #fff !important;
	border-color: #999 !important;
	cursor: not-allowed;
	opacity: 0.9;
}

/* Payment method page – professional layout */
.payment-method-page { padding: 20px 0 40px; }
.payment-method-card { background: #fff; border-radius: 12px; box-shadow: 0 2px 16px rgba(0,0,0,.08); padding: 32px; margin-bottom: 24px; }
.payment-method-title { margin: 0 0 8px; font-size: 26px; font-weight: 700; color: #222; }
.payment-method-subtitle { margin: 0 0 28px; font-size: 15px; color: #666; }
.payment-options { display: flex; flex-direction: column; gap: 14px; }
.payment-option { margin: 0; cursor: pointer; display: block; }
.payment-option input { position: absolute; opacity: 0; pointer-events: none; }
.payment-option-box { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 18px 20px; border: 2px solid #e5e5e5; border-radius: 10px; background: #fafafa; transition: border-color .2s, background .2s, box-shadow .2s; }
.payment-option input:checked + .payment-option-box { border-color: #00b29c; background: #f0faf9; box-shadow: 0 0 0 1px #00b29c; }
.payment-option:hover .payment-option-box { border-color: #b8e6e0; background: #f7fcfb; }
.payment-option-icon { width: 48px; height: 48px; border-radius: 10px; background: #00b29c; color: #fff; display: flex; align-items: center; justify-content: center; font-size: 22px; flex-shrink: 0; }
.payment-option input:checked + .payment-option-box .payment-option-icon { background: #008f7c; }
.payment-option-label { font-size: 16px; font-weight: 600; color: #222; display: block; }
.payment-option-desc { font-size: 13px; color: #666; display: block; margin-top: 2px; width: 100%; }
@media (min-width: 768px) { .payment-option-desc { width: auto; margin-top: 0; } }
.payment-actions { margin-top: 28px; padding-top: 24px; border-top: 1px solid #eee; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.payment-submit-btn { padding: 14px 32px; font-size: 16px; font-weight: 600; border-radius: 8px; background: #00b29c; border-color: #00b29c; }
.payment-submit-btn:hover { background: #009a87; border-color: #009a87; color: #fff; }
.payment-back-link { color: #666; font-size: 14px; text-decoration: none; }
.payment-back-link:hover { color: #00b29c; text-decoration: none; }
.payment-summary-card { background: #fff; border-radius: 12px; box-shadow: 0 2px 16px rgba(0,0,0,.08); padding: 24px; position: sticky; top: 24px; }
.payment-summary-title { margin: 0 0 18px; font-size: 18px; font-weight: 700; color: #222; padding-bottom: 12px; border-bottom: 2px solid #00b29c; }
.payment-summary-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; font-size: 15px; }
.payment-summary-row strong { font-size: 18px; color: #00b29c; }
.payment-summary-note { margin: 16px 0 0; font-size: 13px; color: #666; line-height: 1.5; }

/* Cart slide panel (right side) */
.cart-panel-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,.4); z-index: 9998; opacity: 0; visibility: hidden; transition: opacity 0.25s ease, visibility 0.25s ease; }
.cart-panel-overlay.is-open { opacity: 1; visibility: visible; }
.cart-slide-panel { position: fixed; top: 0; right: 0; width: 100%; max-width: 380px; height: 100%; background: #fff; z-index: 9999; box-shadow: -4px 0 24px rgba(0,0,0,.15); transform: translateX(100%); transition: transform 0.3s ease; overflow: hidden; display: flex; flex-direction: column; }
.cart-slide-panel.is-open { transform: translateX(0); }
.cart-panel-header { display: flex; align-items: center; justify-content: space-between; padding: 18px 20px; background: #00b29c; color: #fff; flex-shrink: 0; }
.cart-panel-title { margin: 0; font-size: 18px; font-weight: 700; color: #fff !important; }
.cart-panel-close { background: transparent; border: none; color: #fff; font-size: 22px; cursor: pointer; padding: 4px 8px; line-height: 1; opacity: .9; }
.cart-panel-close:hover { opacity: 1; }
.cart-panel-body { flex: 1; overflow-y: auto; padding: 20px; }
.cart-panel-item { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid #eee; position: relative; padding-right: 28px; }
.cart-panel-item:last-of-type { border-bottom: none; }
.cart-panel-item-remove { position: absolute; top: 14px; right: 0; width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; color: #999; text-decoration: none; font-size: 16px; border-radius: 4px; transition: color 0.2s, background 0.2s; }
.cart-panel-item-remove:hover { color: #c00; background: #f8f8f8; }
.cart-panel-item-remove .fa-times { font-size: 14px; }
.cart-panel-item-image { flex-shrink: 0; }
.cart-panel-item-image img { width: 70px; height: 90px; object-fit: cover; display: block; }
.cart-panel-item-details { flex: 1; min-width: 0; }
.cart-panel-item-name { margin: 0 0 6px; font-size: 14px; font-weight: 600; line-height: 1.3; }
.cart-panel-item-sr { flex-shrink: 0; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 4px; background: #00b29c; color: #fff; font-weight: 700; font-size: 11px; }
.cart-panel-item-name a { color: #333; }
.cart-panel-item-name a:hover { color: #00b29c; text-decoration: none; }
.cart-panel-item-qty-wrap { margin-bottom: 8px; }
.cart-panel-qty-label { display: block; font-size: 12px; color: #666; margin-bottom: 4px; }
.cart-panel-qty-controls { display: inline-flex; align-items: center; border: 1px solid #ddd; border-radius: 6px; overflow: hidden; }
.cart-panel-qty-btn { width: 28px; height: 28px; border: none; background: #f0f0f0; color: #333; font-size: 16px; line-height: 1; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; }
.cart-panel-qty-btn:hover { background: #00b29c; color: #fff; }
.cart-panel-qty-input { width: 40px; height: 28px; border: none; border-left: 1px solid #ddd; border-right: 1px solid #ddd; text-align: center; font-size: 13px; font-weight: 600; }
.cart-panel-qty-input::-webkit-inner-spin-button, .cart-panel-qty-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.cart-panel-item-price { font-size: 14px; font-weight: 600; color: #00b29c; }
.cart-panel-promo { margin: 16px 0 12px; padding-top: 12px; border-top: 1px solid #eee; }
.cart-panel-promo-label { display: block; font-size: 13px; font-weight: 600; color: #444; margin-bottom: 8px; }
.cart-panel-promo-row { display: flex; gap: 8px; }
.cart-panel-promo-input { flex: 1; height: 38px; padding: 0 12px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; }
.cart-panel-promo-input:focus { border-color: #00b29c; outline: none; }
.cart-panel-promo-btn { flex-shrink: 0; height: 38px; padding: 0 16px; border: none; border-radius: 6px; background: #00b29c; color: #fff; font-size: 13px; font-weight: 600; cursor: pointer; }
.cart-panel-promo-btn:hover { background: #009a87; }
.cart-panel-promo-message { font-size: 12px; margin-top: 6px; min-height: 18px; }
.cart-panel-promo-message.success { color: #0a0; }
.cart-panel-promo-message.error { color: #c00; }
.cart-panel-discount { display: flex; align-items: center; justify-content: space-between; padding: 10px 0 6px; font-size: 14px; color: #666; flex-wrap: wrap; gap: 6px; }
.cart-panel-discount-value { font-weight: 600; color: #0a0; }
.cart-panel-promo-remove { background: none; border: none; color: #999; font-size: 18px; cursor: pointer; padding: 0 4px; line-height: 1; }
.cart-panel-promo-remove:hover { color: #c00; }
.cart-panel-gst { margin: 14px 0 12px; padding: 12px 0; border-top: 1px solid #eee; font-size: 13px; }
.cart-panel-gst-row { display: flex; justify-content: space-between; align-items: center; padding: 4px 0; color: #555; }
.cart-panel-gst-label { font-weight: 500; }
.cart-panel-gst-value { font-weight: 600; color: #333; }
.cart-panel-gst-total { margin-top: 6px; padding-top: 8px; border-top: 1px solid #e0e0e0; font-size: 14px; font-weight: 700; color: #333; }
.cart-panel-gst-total .cart-panel-gst-value { color: #00b29c; }
.cart-panel-total { margin: 18px 0 14px; padding-top: 14px; border-top: 2px solid #eee; font-size: 16px; font-weight: 700; display: flex; justify-content: space-between; align-items: center; }
.cart-panel-total-value { color: #00b29c; }
.cart-panel-btn { padding: 12px 20px; font-weight: 600; border-radius: 8px; background: #00b29c; border-color: #00b29c; margin-top: 8px; }
.cart-panel-btn:hover { background: #009a87; border-color: #009a87; color: #fff; }
.cart-panel-empty-msg { text-align: center; color: #666; margin: 24px 0 20px; font-size: 15px; }
.cart-slide-panel-empty .cart-panel-btn { margin-top: 16px; }