/* ==========================================================================
   MirOne BD — custom WooCommerce theme (WoodMart-style visual rebuild)
   Brand: black #1a1a1a / #000, orange #ff9b05, white
   ========================================================================== */

:root {
	--ct-primary: #ff9b05;
	--ct-primary-dark: #e08900;
	--ct-dark: #1a1a1a;
	--ct-dark-2: #242424;
	--ct-text: #333333;
	--ct-text-light: #777777;
	--ct-border: #e6e6e6;
	--ct-bg: #ffffff;
	--ct-bg-light: #f7f7f7;
	--ct-bg-dark: #111111;
	--ct-sale: #d5222b;
	--ct-success: #2e8b57;
	--ct-radius: 6px;
	--ct-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	--ct-shadow-hover: 0 8px 24px rgba(0, 0, 0, 0.14);
	--ct-font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ct-header-h: 105px;
	--ct-topbar-h: 40px;
	--ct-nav-h: 50px;
	--ct-transition: 0.25s ease;
}

/* ---------- Base ---------- */
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
	margin: 0;
	font-family: var(--ct-font);
	font-size: 14px;
	line-height: 1.65;
	color: var(--ct-text);
	background: var(--ct-bg);
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--ct-dark); text-decoration: none; transition: color var(--ct-transition); }
a:hover { color: var(--ct-primary); }
h1, h2, h3, h4, h5, h6 { font-family: var(--ct-font); color: var(--ct-dark); line-height: 1.25; margin: 0 0 15px; font-weight: 600; }
p { margin: 0 0 15px; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font-family: inherit; cursor: pointer; }
input, select, textarea {
	font-family: inherit;
	font-size: 14px;
	padding: 10px 14px;
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	background: #fff;
	color: var(--ct-text);
	transition: border-color var(--ct-transition);
}
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--ct-primary); }

.container { max-width: 1300px; margin: 0 auto; padding: 0 20px; }
.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
}
.skip-link { position: absolute; left: -9999px; }
.skip-link:focus { left: 10px; top: 10px; z-index: 99999; background: var(--ct-dark); color: #fff; padding: 10px 16px; }

/* ---------- Buttons ---------- */
.btn, .button, button.button,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 11px 26px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	border: 0;
	border-radius: var(--ct-radius);
	background: var(--ct-dark);
	color: #fff;
	transition: all var(--ct-transition);
	cursor: pointer;
	line-height: 1.4;
}
.btn:hover, .button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover {
	background: var(--ct-primary);
	color: #fff;
}
.btn-primary, .button.alt, .woocommerce button.button.alt, .woocommerce a.button.alt {
	background: var(--ct-primary);
	color: #fff;
}
.btn-primary:hover, .button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover {
	background: var(--ct-dark);
}
.btn-light { background: #fff; color: var(--ct-dark); }
.btn-light:hover { background: var(--ct-dark); color: #fff; }

/* ==========================================================================
   HEADER
   ========================================================================== */
.site-header { background: #fff; position: relative; z-index: 100; }

/* Top bar */
.topbar {
	background: var(--ct-dark);
	color: rgba(255, 255, 255, 0.85);
	font-size: 12px;
	height: var(--ct-topbar-h);
	display: flex;
	align-items: center;
}
.topbar-inner { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.topbar-notice { color: var(--ct-primary); font-weight: 600; letter-spacing: 0.8px; }
.topbar-right { display: flex; align-items: center; gap: 20px; }
.topbar-menu { display: flex; gap: 20px; }
.topbar-menu a, .topbar-link { color: rgba(255, 255, 255, 0.85); font-size: 12px; }
.topbar-menu a:hover, .topbar-link:hover { color: var(--ct-primary); }

/* Main header */
.header-main { padding: 22px 0; border-bottom: 1px solid var(--ct-border); }
.header-main-inner { display: flex; align-items: center; gap: 30px; }

.site-branding { flex-shrink: 0; }
.custom-logo-link img { max-height: 64px; width: auto; }
.site-logo-text { font-size: 30px; font-weight: 800; line-height: 1; display: inline-flex; align-items: baseline; gap: 1px; }
.site-logo-text .logo-mir { color: var(--ct-dark); }
.site-logo-text .logo-one { color: var(--ct-dark); }
.site-logo-text em { display: block; font-size: 11px; font-weight: 400; font-style: normal; color: var(--ct-primary); letter-spacing: 1px; margin-top: 3px; }
.site-logo-text { flex-direction: column; align-items: flex-start; }
.site-logo-text:hover .logo-mir, .site-logo-text:hover .logo-one { color: var(--ct-dark); }

/* Header search — WoodMart style: category select | input | button */
.header-search { flex: 1; max-width: 560px; }
.header-search-form {
	display: flex;
	align-items: stretch;
	border: 2px solid var(--ct-border);
	border-radius: var(--ct-radius);
	overflow: hidden;
	background: #fff;
	transition: border-color var(--ct-transition);
}
.header-search-form:focus-within { border-color: var(--ct-primary); }
.header-search-form .search-category {
	border: 0;
	border-right: 1px solid var(--ct-border);
	border-radius: 0;
	padding: 0 34px 0 14px;
	font-size: 13px;
	color: var(--ct-text-light);
	max-width: 170px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' fill='none' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center;
	appearance: none;
	cursor: pointer;
}
.header-search-form .search-field {
	flex: 1;
	border: 0;
	border-radius: 0;
	padding: 11px 16px;
}
.header-search-form .search-field:focus { border-color: transparent; }
.header-search-form .search-submit {
	border: 0;
	border-radius: 0;
	background: var(--ct-primary);
	color: #fff;
	padding: 0 22px;
	display: flex;
	align-items: center;
}
.header-search-form .search-submit:hover { background: var(--ct-dark); }

/* Header icons */
.header-icons { display: flex; align-items: center; gap: 26px; margin-left: auto; }
.header-icon-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	color: var(--ct-dark);
	font-size: 11px;
}
.header-icon-link:hover { color: var(--ct-primary); }
.header-icon-label { font-weight: 500; }
.mbd-cart { display: flex; align-items: center; gap: 10px; color: var(--ct-dark); }
.mbd-cart-icon { position: relative; display: inline-flex; }
.mbd-cart-count {
	position: absolute;
	top: -8px;
	right: -10px;
	background: var(--ct-primary);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	min-width: 17px;
	height: 17px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-style: normal;
}
.mbd-cart-text { display: flex; flex-direction: column; line-height: 1.3; }
.mbd-cart-label { font-size: 11px; color: var(--ct-text-light); }
.mbd-cart-total { font-size: 14px; font-weight: 700; color: var(--ct-dark); }
.mbd-cart:hover .mbd-cart-total { color: var(--ct-primary); }
.mobile-menu-btn { display: none; background: none; border: 0; color: var(--ct-dark); padding: 6px; }

/* ==========================================================================
   NAV BAR — dark bar, browse categories + horizontal menu
   ========================================================================== */
.header-nav {
	background: var(--ct-dark);
	height: var(--ct-nav-h);
}
.header-nav-inner { display: flex; align-items: stretch; height: var(--ct-nav-h); }

/* Browse categories */
.browse-categories { position: relative; display: flex; }
.browse-btn {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--ct-primary);
	color: #fff;
	border: 0;
	padding: 0 22px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.6px;
	height: var(--ct-nav-h);
}
.browse-btn svg:last-child { transition: transform var(--ct-transition); }
.browse-categories.open .browse-btn svg:last-child { transform: rotate(180deg); }
.browse-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 280px;
	background: #fff;
	border: 1px solid var(--ct-border);
	box-shadow: var(--ct-shadow-hover);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all var(--ct-transition);
	z-index: 200;
}
.browse-categories.open .browse-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.browse-dropdown ul { padding: 10px 0; }
.browse-dropdown li { position: relative; }
.browse-dropdown li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 22px;
	font-size: 13px;
	color: var(--ct-text);
	border-bottom: 1px solid #f2f2f2;
}
.browse-dropdown li a:hover { background: var(--ct-bg-light); color: var(--ct-primary); padding-left: 26px; }
.browse-dropdown .children { display: none; padding-left: 16px; background: var(--ct-bg-light); }
.browse-dropdown li:hover > .children { display: block; }

/* Main menu */
.main-menu { display: flex; align-items: stretch; }
.main-menu li { display: flex; align-items: stretch; position: relative; }
.main-menu li a {
	display: flex;
	align-items: center;
	padding: 0 18px;
	font-size: 13px;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.9);
	letter-spacing: 0.3px;
}
.main-menu li a:hover, .main-menu li.current-menu-item > a { color: var(--ct-primary); }
.main-menu .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 210px;
	background: #fff;
	box-shadow: var(--ct-shadow-hover);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all var(--ct-transition);
	z-index: 200;
	padding: 8px 0;
}
.main-menu li:hover > .sub-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.main-menu .sub-menu a { color: var(--ct-text); padding: 9px 20px; display: flex; }
.main-menu .sub-menu a:hover { color: var(--ct-primary); }

.header-nav-phone {
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 10px;
	color: #fff;
	padding: 0 4px;
}
.header-nav-phone svg { color: var(--ct-primary); }
.nav-phone-text { display: flex; flex-direction: column; line-height: 1.25; }
.nav-phone-text small { font-size: 10px; color: rgba(255, 255, 255, 0.6); text-transform: uppercase; letter-spacing: 0.5px; }
.nav-phone-text a { color: #fff; font-weight: 700; font-size: 14px; }
.nav-phone-text a:hover { color: var(--ct-primary); }

/* Sticky */
.site-header.stuck .header-nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	box-shadow: var(--ct-shadow-hover);
	z-index: 300;
}

/* ==========================================================================
   MOBILE DRAWER + TOOLBAR
   ========================================================================== */
.drawer-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	transition: all var(--ct-transition);
	z-index: 400;
}
.drawer-overlay.active { opacity: 1; visibility: visible; }
.mobile-drawer {
	position: fixed;
	top: 0;
	left: -320px;
	width: 300px;
	max-width: 85vw;
	height: 100%;
	background: #fff;
	z-index: 401;
	transition: left var(--ct-transition);
	overflow-y: auto;
}
.mobile-drawer.active { left: 0; }
.mobile-drawer-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	background: var(--ct-dark);
	color: #fff;
	font-weight: 600;
}
.mobile-drawer-close { background: none; border: 0; color: #fff; }
.mobile-drawer-body { padding: 15px 20px; }
.mobile-drawer-search input { width: 100%; margin-bottom: 15px; }
.mobile-drawer-title { font-size: 12px; text-transform: uppercase; letter-spacing: 1px; color: var(--ct-text-light); margin-bottom: 8px; }
.mobile-cat-list li a { display: block; padding: 9px 0; border-bottom: 1px solid #f2f2f2; font-size: 14px; }
.mobile-cat-list .children { padding-left: 16px; }
.mobile-cat-list .children a { font-size: 13px; color: var(--ct-text-light); }
.mobile-menu { margin-top: 15px; border-top: 1px solid var(--ct-border); padding-top: 10px; }
.mobile-menu a { display: block; padding: 10px 0; font-weight: 500; }

.mobile-toolbar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	border-top: 1px solid var(--ct-border);
	display: none;
	z-index: 300;
	padding: 6px 0 calc(6px + env(safe-area-inset-bottom));
}
.mt-item {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3px;
	font-size: 10px;
	color: var(--ct-text-light);
	position: relative;
}
.mt-item:hover { color: var(--ct-primary); }
.mt-cart-count {
	position: absolute;
	top: -4px;
	right: 22%;
	background: var(--ct-primary);
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	min-width: 15px;
	height: 15px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-style: normal;
}

/* ==========================================================================
   HERO SLIDER
   ========================================================================== */
.hero-slider { position: relative; overflow: hidden; background: var(--ct-bg-light); }
.hero-slides { position: relative; }
.hero-slide {
	display: none;
	position: relative;
	min-height: 420px;
	align-items: center;
}
.hero-slide.active { display: flex; }
.hero-slide-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center right;
}
.hero-slide-inner { position: relative; z-index: 2; padding-top: 60px; padding-bottom: 60px; max-width: 1300px; }
.hero-title { font-size: 42px; font-weight: 800; color: var(--ct-dark); max-width: 480px; margin-bottom: 12px; }
.hero-subtitle { font-size: 17px; color: var(--ct-text-light); max-width: 420px; margin-bottom: 26px; }
.hero-btn { padding: 14px 34px; font-size: 14px; }
.hero-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 0;
	background: rgba(255, 255, 255, 0.9);
	color: var(--ct-dark);
	font-size: 24px;
	line-height: 1;
	box-shadow: var(--ct-shadow);
}
.hero-nav:hover { background: var(--ct-primary); color: #fff; }
.hero-prev { left: 18px; }
.hero-next { right: 18px; }
.hero-dots {
	position: absolute;
	bottom: 18px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
	z-index: 5;
}
.hero-dots button {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 0;
	background: rgba(0, 0, 0, 0.25);
	padding: 0;
}
.hero-dots button.active { background: var(--ct-primary); }

/* ==========================================================================
   SECTIONS + PRODUCT CARDS
   ========================================================================== */
.home-section { padding: 50px 0 10px; }
.section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 2px solid var(--ct-border);
	margin-bottom: 26px;
	position: relative;
}
.section-title {
	font-size: 21px;
	font-weight: 700;
	padding-bottom: 12px;
	margin-bottom: -2px;
	border-bottom: 2px solid var(--ct-primary);
	display: inline-block;
}
.section-link { font-size: 13px; font-weight: 500; color: var(--ct-text-light); display: inline-flex; align-items: center; gap: 6px; }
.section-link:hover { color: var(--ct-primary); }

/* Category cards */
.cat-cards {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
}
.cat-card {
	background: #fff;
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	padding: 22px 16px 18px;
	text-align: center;
	transition: all var(--ct-transition);
}
.cat-card:hover { box-shadow: var(--ct-shadow-hover); border-color: var(--ct-primary); transform: translateY(-3px); }
.cat-card-img { display: block; height: 110px; margin-bottom: 14px; }
.cat-card-img img { height: 100%; width: auto; margin: 0 auto; object-fit: contain; }
.cat-card-placeholder { display: flex; height: 100%; align-items: center; justify-content: center; color: var(--ct-border); }
.cat-card-placeholder svg { width: 44px; height: 44px; }
.cat-card-name { display: block; font-weight: 600; color: var(--ct-dark); font-size: 14px; }
.cat-card:hover .cat-card-name { color: var(--ct-primary); }
.cat-card-count { display: block; font-size: 12px; color: var(--ct-text-light); margin-top: 2px; }

/* WooCommerce product loop — WoodMart card style */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
	margin: 0 !important;
}
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 0 16px;
	background: #fff;
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	overflow: hidden;
	position: relative;
	transition: all var(--ct-transition);
	text-align: center;
}
.woocommerce ul.products li.product:hover { box-shadow: var(--ct-shadow-hover); }
.woocommerce ul.products li.product a { color: inherit; }
.woocommerce ul.products li.product .woocommerce-loop-product__link { display: block; }
.woocommerce ul.products li.product img {
	margin: 0 auto;
	width: 100%;
	object-fit: cover;
	aspect-ratio: 1/1;
}
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
	font-size: 14px !important;
	font-weight: 500 !important;
	padding: 12px 14px 4px !important;
	margin: 0 !important;
	color: var(--ct-text);
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title { color: var(--ct-primary); }
.woocommerce ul.products li.product .price {
	font-size: 15px !important;
	font-weight: 700;
	color: var(--ct-dark);
	display: block;
	padding: 2px 14px 10px;
}
.woocommerce ul.products li.product .price del { color: #b0b0b0; font-weight: 400; font-size: 13px; margin-right: 6px; }
.woocommerce ul.products li.product .price ins { text-decoration: none; color: var(--ct-sale); }
.woocommerce ul.products li.product .button {
	margin: 0 14px;
	font-size: 12px;
	padding: 9px 18px;
	width: calc(100% - 28px);
}
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale {
	position: absolute;
	top: 10px;
	left: 10px;
	background: var(--ct-sale);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 3px;
	min-height: 0;
	line-height: 1.4;
	z-index: 5;
}
.woocommerce .star-rating { margin: 4px auto 6px; font-size: 12px; }

/* Shop toolbar */
.shop-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	background: var(--ct-bg-light);
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	padding: 10px 16px;
	margin-bottom: 26px;
}
.woocommerce .woocommerce-result-count { margin: 0; font-size: 13px; color: var(--ct-text-light); }
.woocommerce .woocommerce-ordering { margin: 0; }
.woocommerce .woocommerce-ordering select { padding: 7px 12px; font-size: 13px; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul, .pagination .nav-links {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 34px 0;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.pagination .page-numbers {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	font-size: 13px;
	font-weight: 600;
	color: var(--ct-text);
	padding: 0 12px;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.pagination .page-numbers.current,
.pagination .page-numbers:hover {
	background: var(--ct-primary);
	border-color: var(--ct-primary);
	color: #fff;
}

/* ==========================================================================
   SINGLE PRODUCT
   ========================================================================== */
.single-product .product { padding: 20px 0 40px; }
.single-product .summary .product_title { font-size: 26px; font-weight: 700; margin-bottom: 10px; }
.single-product .price { font-size: 24px; font-weight: 700; color: var(--ct-dark); }
.single-product .price del { color: #b0b0b0; font-weight: 400; font-size: 18px; }
.single-product .price ins { text-decoration: none; color: var(--ct-sale); }
.single-product .woocommerce-product-details__short-description { color: var(--ct-text-light); margin-bottom: 18px; }
.single-product form.cart { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 20px 0; }
.single-product .quantity input { width: 70px; text-align: center; padding: 10px 8px; }
.single-product .single_add_to_cart_button, .single-product .single_buy_now { padding: 13px 30px !important; font-size: 14px; }
.single-product .single_buy_now { background: var(--ct-dark) !important; }
.single-product .single_buy_now:hover { background: var(--ct-primary) !important; }
.single-product .product_meta { font-size: 13px; color: var(--ct-text-light); border-top: 1px solid var(--ct-border); padding-top: 14px; }
.single-product .product_meta > span { display: block; margin-bottom: 5px; }
.single-product .product_meta a { color: var(--ct-primary); }

/* Product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 0;
	border-bottom: 1px solid var(--ct-border);
	padding: 0;
	margin-bottom: 24px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	padding: 12px 26px !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: var(--ct-text-light) !important;
	border-bottom: 2px solid transparent;
	display: block;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--ct-dark) !important;
	border-bottom-color: var(--ct-primary);
}
.woocommerce div.product .woocommerce-tabs .panel { font-size: 14px; color: var(--ct-text); }
.woocommerce div.product .woocommerce-tabs .panel h2 { font-size: 18px; }

/* Related products */
.related.products, .upsells.products { margin-top: 50px; }
.related.products > h2, .upsells.products > h2 { font-size: 21px; font-weight: 700; margin-bottom: 24px; }

/* ==========================================================================
   CART / CHECKOUT / ACCOUNT
   ========================================================================== */
.wc-container { padding: 30px 20px 60px; }
.woocommerce table.shop_table {
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	font-size: 14px;
}
.woocommerce table.shop_table th {
	background: var(--ct-bg-light);
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: var(--ct-dark);
	padding: 14px;
}
.woocommerce table.shop_table td { padding: 14px; border-color: var(--ct-border); vertical-align: middle; }
.woocommerce table.shop_table .product-name a { font-weight: 600; }
.woocommerce a.remove { color: var(--ct-sale) !important; }
.woocommerce a.remove:hover { background: var(--ct-sale); color: #fff !important; }
.cart-collaterals .cart_totals {
	background: var(--ct-bg-light);
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	padding: 26px;
}
.cart-collaterals .cart_totals h2 { font-size: 17px; }
.wc-proceed-to-checkout .checkout-button { font-size: 15px; padding: 15px 30px; width: 100%; }

.woocommerce-billing-fields h3, .woocommerce-shipping-fields h3, #order_review_heading {
	font-size: 19px;
	font-weight: 700;
	margin-bottom: 16px;
}
.woocommerce form .form-row { margin-bottom: 14px; }
.woocommerce form .form-row label { font-weight: 500; font-size: 13px; margin-bottom: 5px; display: block; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { width: 100%; }
#order_review { background: var(--ct-bg-light); border: 1px solid var(--ct-border); border-radius: var(--ct-radius); padding: 24px; }
.woocommerce-checkout #payment {
	background: #fff !important;
	border: 1px solid var(--ct-border) !important;
	border-radius: var(--ct-radius) !important;
}
.woocommerce-checkout #payment div.payment_box { background: var(--ct-bg-light) !important; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--ct-bg-light) !important; }
#place_order { width: 100%; padding: 16px !important; font-size: 16px !important; margin-top: 15px; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	border-top-color: var(--ct-primary) !important;
	border-radius: var(--ct-radius);
	font-size: 14px;
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--ct-primary); }
.woocommerce-error { border-top-color: var(--ct-sale) !important; }

/* My account */
.woocommerce-MyAccount-navigation ul { border: 1px solid var(--ct-border); border-radius: var(--ct-radius); overflow: hidden; }
.woocommerce-MyAccount-navigation ul li { border-bottom: 1px solid var(--ct-border); }
.woocommerce-MyAccount-navigation ul li:last-child { border-bottom: 0; }
.woocommerce-MyAccount-navigation ul li a { display: block; padding: 13px 20px; font-weight: 500; }
.woocommerce-MyAccount-navigation ul li.is-active a, .woocommerce-MyAccount-navigation ul li a:hover { background: var(--ct-bg-light); color: var(--ct-primary); }
.woocommerce form.login, .woocommerce form.register {
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	padding: 30px;
}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; }

/* ==========================================================================
   PROMO STRIP
   ========================================================================== */
.home-promo {
	background: linear-gradient(135deg, var(--ct-dark) 0%, #000 100%);
	padding: 38px 0;
	margin: 50px 0 0;
}
.promo-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.promo-text h3 { color: #fff; font-size: 24px; font-weight: 700; margin-bottom: 4px; }
.promo-text h3::first-letter { color: var(--ct-primary); }
.promo-text p { color: rgba(255, 255, 255, 0.7); margin: 0; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer { margin-top: 60px; }

.footer-features { border-top: 1px solid var(--ct-border); border-bottom: 1px solid var(--ct-border); padding: 26px 0; }
.footer-features-inner { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.feature-item { display: flex; align-items: center; gap: 14px; }
.feature-icon { color: var(--ct-primary); display: inline-flex; flex-shrink: 0; }
.feature-item strong { display: block; font-size: 13px; font-weight: 600; color: var(--ct-dark); }
.feature-item span:not(.feature-icon) span, .feature-item div > span { font-size: 12px; color: var(--ct-text-light); }

.footer-payment { padding: 26px 0; text-align: center; border-bottom: 1px solid var(--ct-border); }
.footer-payment img { max-width: 900px; width: 100%; margin: 0 auto; }

.footer-main { background: var(--ct-dark); color: rgba(255, 255, 255, 0.7); padding: 52px 0 40px; }
.footer-main-inner { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 36px; }
.footer-title { color: #fff; font-size: 15px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 18px; position: relative; padding-bottom: 10px; }
.footer-title::after { content: ""; position: absolute; bottom: 0; left: 0; width: 34px; height: 2px; background: var(--ct-primary); }
.footer-logo .custom-logo-link img { max-height: 52px; }
.footer-logo-text .logo-mir, .footer-logo-text .logo-one { color: #fff; }
.footer-tagline { color: var(--ct-primary); font-size: 13px; margin: 8px 0 18px; }
.footer-contact li { display: flex; gap: 10px; margin-bottom: 12px; font-size: 13px; line-height: 1.5; }
.footer-contact svg { color: var(--ct-primary); flex-shrink: 0; margin-top: 3px; }
.footer-contact a { color: rgba(255, 255, 255, 0.7); }
.footer-contact a:hover { color: var(--ct-primary); }
.footer-social { display: flex; gap: 10px; margin-top: 20px; }
.footer-social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}
.footer-social a:hover { background: var(--ct-primary); }
.footer-menu li a { display: block; padding: 7px 0; font-size: 13px; color: rgba(255, 255, 255, 0.7); }
.footer-menu li a::before { content: "›"; color: var(--ct-primary); margin-right: 8px; font-weight: 700; }
.footer-menu li a:hover { color: var(--ct-primary); padding-left: 4px; }

.footer-bottom { background: #000; padding: 16px 0; font-size: 12px; color: rgba(255, 255, 255, 0.5); }
.footer-bottom-inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 8px; }
.footer-bottom p { margin: 0; }
.footer-bottom a { color: var(--ct-primary); }

/* ==========================================================================
   BLOG / CONTENT
   ========================================================================== */
.posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; padding: 40px 0; }
.post-card { background: #fff; border: 1px solid var(--ct-border); border-radius: var(--ct-radius); overflow: hidden; transition: all var(--ct-transition); }
.post-card:hover { box-shadow: var(--ct-shadow-hover); }
.post-card-thumb img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.post-card-body { padding: 20px; }
.post-card .entry-title { font-size: 17px; margin-bottom: 8px; }
.entry-meta { font-size: 12px; color: var(--ct-text-light); margin-bottom: 12px; display: flex; gap: 12px; flex-wrap: wrap; }
.entry-summary { font-size: 13px; color: var(--ct-text-light); }
.read-more { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--ct-primary); margin-top: 10px; }

.has-sidebar { display: grid; grid-template-columns: 1fr 300px; gap: 40px; padding: 40px 20px; }
.page-wrap { padding: 40px 20px; max-width: 900px; }
.entry-content { font-size: 15px; line-height: 1.8; }
.entry-content img { border-radius: var(--ct-radius); }
.entry-title { font-size: 28px; font-weight: 700; }
.archive-header { padding: 34px 0 8px; border-bottom: 1px solid var(--ct-border); margin-bottom: 20px; }
.archive-title { font-size: 26px; }
.single-post .entry-thumb { margin: 18px 0; border-radius: var(--ct-radius); overflow: hidden; }

.widget { margin-bottom: 30px; }
.widget-title { font-size: 15px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; border-bottom: 2px solid var(--ct-border); padding-bottom: 10px; margin-bottom: 16px; }
.widget ul li a { display: block; padding: 6px 0; font-size: 13px; border-bottom: 1px solid #f4f4f4; }
.widget ul li a:hover { color: var(--ct-primary); }

/* Comments */
.comments-area { margin-top: 40px; border-top: 1px solid var(--ct-border); padding-top: 30px; }
.comment-list { list-style: none; }
.comment-body { background: var(--ct-bg-light); border-radius: var(--ct-radius); padding: 18px; margin-bottom: 14px; font-size: 14px; }
.comment-reply-link, .comment-edit-link { font-size: 12px; color: var(--ct-primary); font-weight: 600; }
.comment-form input:not([type=submit]), .comment-form textarea { width: 100%; }

/* 404 */
.error-404 { text-align: center; padding: 80px 0; }
.error-title { font-size: 110px; font-weight: 800; color: var(--ct-primary); margin-bottom: 0; }
.error-text { font-size: 17px; color: var(--ct-text-light); margin-bottom: 26px; }
.error-search { max-width: 420px; margin: 30px auto 0; }
.search-form { display: flex; gap: 0; }
.search-form .search-field { flex: 1; border-radius: var(--ct-radius) 0 0 var(--ct-radius); }
.search-form .search-submit { border-radius: 0 var(--ct-radius) var(--ct-radius) 0; }

/* ==========================================================================
   WOOCOMMERCE EXTRAS
   ========================================================================== */
.woocommerce .woocommerce-breadcrumb { font-size: 12px; color: var(--ct-text-light); padding: 14px 0; margin: 0; }
.woocommerce .woocommerce-breadcrumb a { color: var(--ct-text-light); }
.woocommerce .woocommerce-breadcrumb a:hover { color: var(--ct-primary); }
.woocommerce .woocommerce-product-gallery { position: relative; }
.woocommerce div.product div.images .flex-control-thumbs li { border: 1px solid var(--ct-border); border-radius: 4px; overflow: hidden; }
.woocommerce .quantity .qty { border: 1px solid var(--ct-border); }
.variations select { min-width: 180px; }
.woocommerce-variation-price .price { font-size: 22px; }
.wc-missing-notice { text-align: center; padding: 50px; color: var(--ct-text-light); }

/* Sale badge on single */
.single-product span.onsale {
	position: absolute;
	top: 14px;
	left: 14px;
	background: var(--ct-sale);
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	padding: 6px 12px;
	border-radius: 4px;
	z-index: 5;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 1100px) {
	.woocommerce ul.products { grid-template-columns: repeat(3, 1fr); }
	.cat-cards { grid-template-columns: repeat(3, 1fr); }
	.footer-main-inner { grid-template-columns: 1fr 1fr; gap: 30px; }
	.footer-features-inner { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
	.header-nav .main-menu, .header-nav-phone { display: none; }
	.header-nav-inner { justify-content: flex-start; }
	.header-search { max-width: none; }
	.header-icon-label, .mbd-cart-text { display: none; }
	.header-icons { gap: 18px; }
	.posts-grid { grid-template-columns: repeat(2, 1fr); }
	.has-sidebar { grid-template-columns: 1fr; }
	.hero-title { font-size: 32px; }
}

@media (max-width: 768px) {
	.topbar { display: none; }
	.header-main { padding: 14px 0; }
	.header-main-inner { gap: 14px; flex-wrap: wrap; }
	.mobile-menu-btn { display: block; order: -1; }
	.site-branding { margin-right: auto; }
	.custom-logo-link img { max-height: 44px; }
	.header-search { order: 3; flex-basis: 100%; }
	.header-nav { display: none; }
	.mobile-toolbar { display: flex; }
	body { padding-bottom: 62px; }
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); gap: 12px; }
	.cat-cards { grid-template-columns: repeat(2, 1fr); gap: 14px; }
	.hero-slide { min-height: 300px; }
	.hero-title { font-size: 26px; }
	.hero-subtitle { font-size: 14px; }
	.hero-nav { display: none; }
	.footer-main-inner { grid-template-columns: 1fr; }
	.promo-inner { text-align: center; justify-content: center; }
	.footer-features-inner { grid-template-columns: 1fr; gap: 16px; }
	.single-product .summary .product_title { font-size: 21px; }
	.section-title { font-size: 17px; }
	.posts-grid { grid-template-columns: 1fr; }
	.woocommerce form.login, .woocommerce form.register { padding: 20px; }
}

@media (max-width: 480px) {
	.woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
	.woocommerce ul.products li.product .button { font-size: 10px; padding: 8px 10px; }
	.cat-cards { grid-template-columns: repeat(2, 1fr); }
	.hero-slide { min-height: 240px; }
	.container { padding: 0 14px; }
}

/* ==========================================================================
   SHOP LAYOUT — products + sidebar (WoodMart-style two-column catalog)
   ========================================================================== */
.shop-layout {
	display: grid;
	grid-template-columns: 1fr 270px;
	gap: 30px;
	align-items: start;
}
.shop-main { min-width: 0; }
.shop-sidebar {
	position: sticky;
	top: calc(var(--ct-nav-h) + 14px);
}
.shop-sidebar .widget {
	background: #fff;
	border: 1px solid var(--ct-border);
	border-radius: var(--ct-radius);
	padding: 18px;
	margin-bottom: 18px;
}
.shop-sidebar .widget-title,
.shop-sidebar .widgettitle {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	color: var(--ct-dark);
	border-bottom: 2px solid var(--ct-primary);
	display: inline-block;
	padding-bottom: 8px;
	margin-bottom: 14px;
}

/* Category & filter lists (widgets + WC blocks) */
.shop-sidebar ul, .wc-block-product-categories-list,
.wc-block-attribute-filter-list, .wc-block-stock-filter-list {
	list-style: none;
}
.shop-sidebar .widget ul li { padding: 0; }
.shop-sidebar .widget ul li a,
.wc-block-product-categories-list-item,
.wc-block-attribute-filter-list-item a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 7px 0;
	font-size: 13px;
	color: var(--ct-text);
	border-bottom: 1px solid #f4f4f4;
}
.shop-sidebar .widget ul li a:hover,
.wc-block-product-categories-list-item a:hover { color: var(--ct-primary); }
.shop-sidebar .widget .count, .wc-block-product-categories-list-item-count {
	font-size: 11px;
	color: var(--ct-text-light);
	background: var(--ct-bg-light);
	border-radius: 10px;
	padding: 1px 8px;
}
.shop-sidebar .children { padding-left: 14px; }

/* Checkbox-style filters (attribute/color/size) */
.wc-block-checkbox-list li, .widget_layered_nav li,
.wc-block-attribute-filter li { display: flex; align-items: center; gap: 8px; padding: 5px 0; font-size: 13px; }
.wc-block-checkbox-list input[type=checkbox], .shop-sidebar input[type=checkbox] { accent-color: var(--ct-primary); width: 15px; height: 15px; }

/* Price filter (widget + block) */
.price_slider_wrapper .price_slider {
	background: var(--ct-border);
	height: 5px;
	border-radius: 3px;
	position: relative;
	margin: 14px 0;
}
.price_slider .ui-slider-range { background: var(--ct-primary); height: 100%; position: absolute; border-radius: 3px; }
.price_slider .ui-slider-handle {
	position: absolute;
	top: -6px;
	width: 17px;
	height: 17px;
	background: #fff;
	border: 3px solid var(--ct-primary);
	border-radius: 50%;
	cursor: pointer;
	margin-left: -8px;
}
.price_slider_amount { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; }
.price_slider_amount .button { padding: 8px 18px; font-size: 11px; }
.price_slider_amount .price_label { margin-left: auto; }

/* ==========================================================================
   SUB-CATEGORY CARDS (archive landing — big cards like reference site)
   ========================================================================== */
.archive-subcats { margin-bottom: 30px; }
.subcat-cards {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	margin-bottom: 30px;
}
.subcat-card {
	background: #fff;
	text-align: center;
	display: block;
	border-radius: var(--ct-radius);
	overflow: hidden;
	transition: all var(--ct-transition);
}
.subcat-card:hover { transform: translateY(-4px); }
.subcat-card:hover .subcat-card-name { color: var(--ct-primary); }
.subcat-card-img { display: block; aspect-ratio: 1/1; overflow: hidden; background: var(--ct-bg-light); }
.subcat-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.subcat-card:hover .subcat-card-img img { transform: scale(1.06); }
.subcat-card-body { padding: 14px 10px 18px; }
.subcat-card-name {
	display: block;
	font-size: 15px;
	font-weight: 700;
	color: var(--ct-dark);
	text-transform: uppercase;
	letter-spacing: 0.4px;
}
.subcat-card-count { font-size: 12px; color: var(--ct-text-light); }

/* Landing shortcode */
.custom-landing .landing-title {
	font-size: 26px;
	font-weight: 800;
	border-bottom: 2px solid var(--ct-border);
	padding-bottom: 12px;
	margin-bottom: 26px;
	position: relative;
}
.custom-landing .landing-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 80px;
	height: 2px;
	background: var(--ct-primary);
}

/* ==========================================================================
   LOOP "BUY NOW" + QUICK ORDER FORM
   ========================================================================== */
.woocommerce ul.products li.product .buy-now-btn {
	background: var(--ct-primary);
	margin-top: 6px;
}
.woocommerce ul.products li.product .buy-now-btn:hover { background: var(--ct-dark); }

.quick-order { margin-top: 18px; width: 100%; }
.quick-order-toggle { width: 100%; padding: 14px 20px; font-size: 14px; }
.quick-order-form {
	background: var(--ct-bg-light);
	border: 1px solid var(--ct-border);
	border-top: 3px solid var(--ct-primary);
	border-radius: var(--ct-radius);
	padding: 22px;
	margin-top: 14px;
}
.qo-title { font-size: 17px; margin-bottom: 6px; }
.qo-product { font-size: 14px; color: var(--ct-text-light); margin-bottom: 16px; }
.qo-product .price, .qo-product .amount { color: var(--ct-dark); font-weight: 700; }
.quick-order-form input, .quick-order-form textarea { width: 100%; margin-bottom: 12px; background: #fff; }
.qo-submit { width: 100%; padding: 13px; }
.qo-hp { position: absolute; left: -9999px; opacity: 0; height: 0; }
.qo-success { margin-top: 14px; }

/* Single product add-to-cart row spacing */
.single-product form.cart { align-items: flex-start; }
.single-product form.cart .button { min-height: 48px; }

@media (max-width: 900px) {
	.shop-layout { grid-template-columns: 1fr; }
	.shop-sidebar { position: static; }
	.subcat-cards { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
	.subcat-cards { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}

/* ==========================================================================
   CHECKOUT LAYOUTS
   ========================================================================== */
/* Two-column: billing/shipping left, order review + payment right */
.checkout-columns form.checkout {
	display: grid;
	grid-template-columns: 1.15fr 0.85fr;
	gap: 30px;
	align-items: start;
}
.checkout-columns form.checkout .col2-set { display: contents; }
.checkout-columns form.checkout .col2-set .col-1,
.checkout-columns form.checkout .col2-set .col-2 {
	float: none;
	width: 100% !important;
	max-width: 100%;
}
.checkout-columns form.checkout .col2-set .col-1 { grid-column: 1; }
.checkout-columns form.checkout .col2-set .col-2 { grid-column: 1; }
.checkout-columns form.checkout #order_review_heading { grid-column: 2; grid-row: 1; align-self: end; }
.checkout-columns form.checkout #order_review { grid-column: 2; grid-row: 1 / span 2; margin-top: 44px; }
.checkout-columns form.checkout .woocommerce-checkout-review-order-table,
.checkout-columns form.checkout .woocommerce-checkout-payment { width: 100%; }

/* Stacked: everything single column */
.checkout-stacked form.checkout .col2-set .col-1,
.checkout-stacked form.checkout .col2-set .col-2 {
	width: 100% !important;
	float: none;
}
.checkout-stacked #order_review { margin-top: 30px; }

@media (max-width: 900px) {
	.checkout-columns form.checkout { grid-template-columns: 1fr; }
	.checkout-columns form.checkout .col2-set .col-1,
	.checkout-columns form.checkout .col2-set .col-2,
	.checkout-columns form.checkout #order_review_heading,
	.checkout-columns form.checkout #order_review { grid-column: 1; grid-row: auto; }
	.checkout-columns form.checkout #order_review { margin-top: 10px; }
}

/* ==========================================================================
   ELEMENTOR / PAGE CONTENT WRAP
   ========================================================================== */
.front-content .elementor-section-stretched { width: 100%; }
.front-content > .post { padding: 0; }
/* Plain (non-builder) page content gets a readable container */
.front-content > .entry-content,
.front-content > article,
.front-content > .wp-block-post-content {
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 20px;
}
.front-content .elementor { margin: 0; }

/* ==========================================================================
   MOBILE OVERFLOW GUARD — stop left-right page movement
   ========================================================================== */
html, body { overflow-x: hidden; }
#page, .site, .site-content { overflow-x: hidden; }
.header-main-inner, .header-nav-inner, .shop-layout,
.cat-cards > *, .subcat-cards > *, .woocommerce ul.products > li { min-width: 0; }
.header-search-form .search-category { min-width: 0; }
.woocommerce ul.products li.product .woocommerce-loop-product__link { display: block; overflow: hidden; }
table { max-width: 100%; }
.woocommerce table.shop_table { display: block; overflow-x: auto; }
@media (min-width: 641px) { .woocommerce table.shop_table { display: table; } }

/* ==========================================================================
   PRODUCT CARD — smarter look: image zoom, tighter meta
   ========================================================================== */
.woocommerce ul.products li.product img { transition: transform 0.45s ease; }
.woocommerce ul.products li.product:hover img { transform: scale(1.05); }
.woocommerce ul.products li.product .woocommerce-loop-product__link { position: relative; }

/* ==========================================================================
   LIVE SEARCH DROPDOWN
   ========================================================================== */
.header-search-form { position: relative; }
.search-results {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid var(--ct-border);
	border-top: 0;
	box-shadow: var(--ct-shadow-hover);
	z-index: 250;
	max-height: 380px;
	overflow-y: auto;
	display: none;
}
.search-results.open { display: block; }
.sr-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px;
	border-bottom: 1px solid #f4f4f4;
}
.sr-item:hover { background: var(--ct-bg-light); }
.sr-item img { width: 44px; height: 44px; object-fit: cover; border-radius: 4px; flex-shrink: 0; }
.sr-item-info { min-width: 0; }
.sr-item-title { font-size: 13px; font-weight: 500; color: var(--ct-dark); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sr-item-price { font-size: 12px; color: var(--ct-primary); font-weight: 700; }
.sr-all { display: block; text-align: center; padding: 10px; font-size: 12px; font-weight: 600; color: var(--ct-primary); background: var(--ct-bg-light); }
.sr-empty, .sr-loading { padding: 14px; text-align: center; font-size: 13px; color: var(--ct-text-light); }
