/*
Theme Name: Bibobike
Author: Bibobike
Description: قالب ووكومرس عربي RTL موبايل أولاً لعلامة Bibobike
Version: 1.0.0
Text Domain: bibobike
*/

:root{
	--bb-primary:#e33f3f;
	--bb-primary-dark:#b12a2a;
	--bb-secondary:#0f2b3d;
	--bb-accent:var(--bb-primary);
	--bb-focus:#0f2b3d;
	--bb-text:#1e2a3a;
	--bb-text-2:#2c3e50;
	--bb-radius:16px;
	--bb-radius-card:20px;
	--bb-radius-btn:40px;
	--bb-container:1280px;
	--bb-nav-h:68px;
	--bb-atc-h:72px;
	--bb-bg:linear-gradient(135deg,#f0f0f8 0%,#e5e5ef 100%);
	--bb-bg-2:rgba(255,255,255,.20);
	--bb-surface:rgba(255,255,255,.20);
	--bb-card:rgba(255,255,255,.25);
	--bb-border:rgba(255,255,255,.50);
	--bb-glass-bg:var(--bb-card);
	--bb-glass-border:rgba(255,255,255,.50);
	--bb-shadow-sm:0 4px 12px rgba(0,0,0,.05);
	--bb-shadow-md:0 8px 24px rgba(0,0,0,.08);
	--bb-shadow-hover:0 20px 30px -12px rgba(0,0,0,.15);
	--bb-header-bg:rgba(255,255,255,.12);
	--bb-header-border:rgba(255,255,255,.22);
	--bb-hero-overlay:linear-gradient(135deg,rgba(245,245,255,.65) 0%,rgba(220,220,240,.55) 100%);
	--bb-hero-image:url('hero.png');
	--bb-hero-panel-bg:rgba(255,255,255,.25);
	--bb-hero-panel-border:rgba(255,255,255,.60);
	--bb-footer-bg:rgba(10,28,42,.9);
	--bb-footer-text:#cfdfed;
	--bb-transition:all .25s cubic-bezier(.2,0,0,1);
}

*{box-sizing:border-box;}
html{direction:rtl;}
body{
	margin:0;
	background:var(--bb-bg);
	color:var(--bb-text);
	font-family:"Cairo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	line-height:1.5;
	padding-bottom:var(--bb-nav-h);
	transition:background-color .2s ease,color .2s ease;
}

body.dark{
	--bb-primary:#e55a5a;
	--bb-primary-dark:#c73e3e;
	--bb-secondary:#2c4b66;
	--bb-accent:var(--bb-primary);
	--bb-text:#edf2f7;
	--bb-text-2:#cbd5e6;
	--bb-bg:linear-gradient(135deg,#1a1a24 0%,#12121c 100%);
	--bb-bg-2:rgba(0,0,0,.30);
	--bb-surface:rgba(0,0,0,.30);
	--bb-card:rgba(0,0,0,.40);
	--bb-border:rgba(255,255,255,.15);
	--bb-glass-bg:var(--bb-card);
	--bb-glass-border:rgba(255,255,255,.15);
	--bb-shadow-sm:0 4px 12px rgba(0,0,0,.30);
	--bb-shadow-md:0 8px 24px rgba(0,0,0,.40);
	--bb-shadow-hover:0 20px 30px -12px rgba(0,0,0,.50);
	--bb-header-bg:rgba(0,0,0,.28);
	--bb-header-border:rgba(255,255,255,.08);
	--bb-hero-overlay:linear-gradient(135deg,rgba(20,20,30,.8) 0%,rgba(10,10,20,.7) 100%);
	--bb-hero-panel-bg:rgba(0,0,0,.45);
	--bb-hero-panel-border:rgba(255,255,255,.15);
	--bb-footer-bg:rgba(0,0,0,.60);
	--bb-footer-text:#cbd5e6;
}
body.single-product{padding-bottom:calc(var(--bb-nav-h) + var(--bb-atc-h));}
@media (min-width:1024px){
	body{padding-bottom:0;}
	body.single-product{padding-bottom:0;}
}

body.single-product .bb-section{
	padding-top:32px;
	padding-bottom:64px;
}

body.single-product .bb-page-card{
	background:transparent;
	border:0;
	box-shadow:none;
	padding:0;
}

a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
button,input,select,textarea{font:inherit;color:inherit;}

.bb-skip{
	position:absolute;
	right:12px;
	top:0;
	transform:translateY(-120%);
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:12px 16px;
	z-index:100;
}
.bb-skip:focus{transform:translateY(12px);}

.bb-container{max-width:var(--bb-container);margin:0 auto;padding:0 24px;width:100%;}

.bb-card{
	background:var(--bb-card);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	box-shadow:var(--bb-shadow-sm);
}

.bb-glass{
	background:var(--bb-glass-bg);
	border:1px solid var(--bb-glass-border);
	border-radius:var(--bb-radius-card);
	backdrop-filter:blur(10px);
	-webkit-backdrop-filter:blur(10px);
}

.bb-interactive{
	transition:var(--bb-transition);
}
@media (hover:hover){
	.bb-interactive:hover{border-color:var(--bb-primary-dark);}
	.bb-btn:hover{border-color:var(--bb-primary-dark);}
	.bb-btn-primary:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);}
}

.bb-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	padding:14px 18px;
	border-radius:var(--bb-radius-btn);
	border:1px solid var(--bb-border);
	background:var(--bb-surface);
	color:var(--bb-text);
	font-weight:900;
	min-height:52px;
	cursor:pointer;
	transition:border-color 180ms,background-color 180ms,color 180ms;
}
.bb-btn-primary{background:var(--bb-accent);border-color:var(--bb-accent);color:#ffffff;}
.bb-btn-primary:disabled{opacity:.55;cursor:not-allowed;}
.bb-btn-secondary{background:var(--bb-surface);border-color:var(--bb-border);color:var(--bb-text);}
.bb-btn-full{width:100%;}
@media (hover:hover){
	.bb-btn:hover{border-color:var(--bb-primary-dark);}
	.bb-btn-primary:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);}
}

.bb-error-section{
	min-height:70vh;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:24px 0;
}
.bb-error-card{
	max-width:520px;
	width:100%;
	text-align:center;
	background:var(--bb-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	box-shadow:var(--bb-shadow-md);
	padding:26px 18px;
}
@media (min-width:768px){
	.bb-error-card{padding:32px 24px;}
}
.bb-error-icon{font-size:54px;color:var(--bb-primary);opacity:.70;margin:0 0 10px 0;}
.bb-error-code{font-size:54px;font-weight:900;color:var(--bb-text);line-height:1;margin:0 0 8px 0;}
.bb-error-title{margin:0 0 10px 0;font-size:28px;font-weight:900;color:var(--bb-text);}
.bb-error-message{margin:0 0 16px 0;color:var(--bb-text-2);font-weight:700;line-height:1.8;}
.bb-error-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}

.bb-icon-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:44px;
	height:44px;
	border-radius:999px;
	border:1px solid var(--bb-border);
	background:var(--bb-surface);
	color:var(--bb-text);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	position:relative;
	transition:var(--bb-transition);
}
@media (hover:hover){
	.bb-icon-btn:hover{background:var(--bb-primary);border-color:var(--bb-primary);color:#ffffff;}
}
.bb-cart-count{
	position:absolute;
	top:-8px;
	left:-8px;
	min-width:20px;
	height:20px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--bb-primary);
	color:#ffffff;
	font-size:11px;
	font-weight:700;
	font-family:var(--bb-font);
	border:2px solid var(--bb-header-bg);
	line-height:1;
	padding:0 2px;
	box-shadow:var(--bb-shadow-sm);
	z-index:2;
	transition:var(--bb-transition);
}

/* Responsive cart count sizing */
@media (max-width:768px){
	.bb-cart-count{
		top:-6px;
		left:-6px;
		min-width:18px;
		height:18px;
		font-size:10px;
		border-width:1px;
	}
}

@media (max-width:480px){
	.bb-cart-count{
		top:-4px;
		left:-4px;
		min-width:16px;
		height:16px;
		font-size:9px;
		border-width:1px;
	}
}

.bb-header{
	position:sticky;
	top:0;
	z-index:100;
	background:var(--bb-header-bg);
	backdrop-filter:blur(14px) saturate(120%);
	-webkit-backdrop-filter:blur(14px) saturate(120%);
	border-bottom:1px solid var(--bb-header-border);
	color:var(--bb-text);
}

.bb-header::before{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 100%);
	opacity:.35;
	pointer-events:none;
}

body.dark .bb-header::before{
	background:linear-gradient(180deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 100%);
	opacity:.28;
}
.bb-header__grid{
	display:flex;
	align-items:center;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:8px 0;
	gap:16px;
	position:relative;
	z-index:1;
}
.bb-header__logo{justify-self:start;}
.bb-header__icons{justify-self:end;display:flex;gap:16px;align-items:center;}
.bb-header__search{flex:1 1 100%;}

.bb-header__search{display:none;}

.bb-nav{flex:0 1 auto;}
.bb-nav__list{list-style:none;margin:0;padding:0;display:flex;gap:32px;align-items:center;flex-wrap:wrap;}
.bb-nav__list a{display:inline-flex;min-height:38px;align-items:center;font-weight:600;color:var(--bb-text);transition:var(--bb-transition);}
.bb-nav__list a:hover{color:var(--bb-primary);}

@media (max-width:768px){
	.bb-header__grid{flex-direction:column;align-items:center;}
	.bb-nav{width:100%;}
	.bb-nav__list{justify-content:center;gap:16px;}
	.bb-header__icons{justify-content:center;}
}

.bb-logo__mark{
	width:10px;height:10px;
	background:var(--bb-accent);
	border-radius:999px;
	display:inline-block;
}
.bb-logo{
	display:inline-flex;
	align-items:center;
	height:60px;
}
.bb-logo__img{
	display:block;
	max-width:160px;
	height:60px;
	width:auto;
	object-fit:contain;
}
.bb-logo__img--light,
.bb-logo__img--dark{
	max-width:160px;
	height:60px;
	width:auto;
	object-fit:contain;
	object-position:center;
}
.bb-logo__img--dark{display:none;}
body.dark .bb-logo__img--light{display:none;}
body.dark .bb-logo__img--dark{display:block;}
@media (min-width:1024px){
	.bb-logo__img{height:60px;}
}
.bb-logo__text{font-weight:800;letter-spacing:.2px;}

.bb-header__icons a.bb-icon-btn{
	background:transparent;
	border-color:transparent;
	color:var(--bb-text);
	font-size:1.2rem;
	width:40px;
	height:40px;
	min-width:40px;
	min-height:40px;
}
@media (hover:hover){
	.bb-header__icons a.bb-icon-btn:hover{background:transparent;border-color:transparent;color:var(--bb-primary);}
}

.bb-theme-toggle{width:40px;height:40px;min-width:40px;min-height:40px;background:var(--bb-surface);border:1px solid var(--bb-border);color:var(--bb-text);}

.bb-search{
	position:relative;
}
.bb-search__row{
	display:flex;
	gap:10px;
	align-items:center;
	background:var(--bb-bg-2);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:8px;
}
.bb-search__input{
	flex:1;
	min-height:44px;
	border:0;
	background:transparent;
	color:var(--bb-text);
	outline:none;
	padding:0 10px;
	font-size:16px;
}
.bb-search__btn{
	min-width:44px;
	min-height:44px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	cursor:pointer;
	transition:border-color 180ms,background-color 180ms;
}
@media (hover:hover){
	.bb-search__btn:hover{border-color:var(--bb-primary-dark);}
}

.bb-search--hero .bb-search__row{display:flex;background:#ffffff;border-radius:60px;padding:4px;box-shadow:var(--bb-shadow-md);max-width:500px;border:0;}
.bb-search--hero .bb-search__input{min-height:auto;font-size:1rem;padding:14px 24px;color:#1e2a3a;}
.bb-search--hero .bb-search__btn{min-height:48px;min-width:auto;border-radius:60px;background:var(--bb-primary);border:0;color:#ffffff;padding:0 24px;transition:var(--bb-transition);display:inline-flex;align-items:center;gap:10px;}
@media (hover:hover){
	.bb-search--hero .bb-search__btn:hover{background:var(--bb-primary-dark);}
}
.bb-search__btn-text{font-weight:900;font-size:14px;}

.bb-autocomplete{
	position:absolute;
	right:0;
	left:0;
	top:calc(100% + 8px);
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	overflow:hidden;
	z-index:90;
}
.bb-autocomplete[hidden]{display:none;}
.bb-autocomplete__item{
	display:flex;
	gap:12px;
	align-items:center;
	padding:12px;
	border-bottom:1px solid var(--bb-border);
	min-height:64px;
}
.bb-autocomplete__item:last-child{border-bottom:0;}
.bb-autocomplete__thumb{
	width:44px;
	height:44px;
	border-radius:12px;
	border:1px solid var(--bb-border);
	background:var(--bb-bg-2);
	object-fit:cover;
}
.bb-autocomplete__meta{display:flex;flex-direction:column;gap:2px;min-width:0;}
.bb-autocomplete__title{
	font-weight:800;
	font-size:14px;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.bb-autocomplete__price{font-size:12px;color:var(--bb-text-2);}
@media (hover:hover){
	.bb-autocomplete__item:hover{background:var(--bb-bg-2);}
}

.bb-main{min-height:60vh;}

.bb-section{padding:64px 0;}

@keyframes fadeInUp{
	from{opacity:0;transform:translateY(30px);}
	to{opacity:1;transform:translateY(0);}
}

.bb-hero{border-bottom:1px solid var(--bb-border);}
body.dark .bb-hero{border-bottom:0;}
.bb-hero--home{
	position:relative;
	min-height:85vh;
	display:flex;
	align-items:center;
	background-image:var(--bb-hero-image);
	background-size:cover;
	background-position:center 30%;
	background-repeat:no-repeat;
	background-attachment:fixed;
}
.bb-hero--home::before{content:"";position:absolute;inset:0;background:var(--bb-hero-overlay);z-index:1;}
.bb-hero--home::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.15) 0%,rgba(0,0,0,.10) 80%);pointer-events:none;z-index:1;}
body.dark .bb-hero--home::after{background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.08) 0%,rgba(0,0,0,.20) 80%);}
.bb-hero--home .bb-hero__wrap{position:relative;z-index:3;width:100%;display:flex;align-items:center;justify-content:flex-start;}
.bb-hero__wrap{padding:0;}

.bb-hero__panel{
	max-width:650px;
	background:var(--bb-hero-panel-bg);
	border:1px solid var(--bb-hero-panel-border);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border-radius:32px;
	padding:40px 32px;
	box-shadow:0 8px 32px rgba(0,0,0,.10);
	display:flex;
	flex-direction:column;
	gap:16px;
	animation:fadeInUp .6s ease-out;
}

.bb-hero__badge{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;background:var(--bb-primary);color:#ffffff;border-radius:40px;padding:6px 16px;font-weight:600;font-size:13px;}
.bb-hero__title{margin:0;font-size:clamp(2.2rem,6vw,3.8rem);font-weight:800;line-height:1.2;color:#ffffff;text-shadow:0 2px 4px rgba(0,0,0,.20);}
.bb-hero__subtitle{margin:0;font-size:1.2rem;color:rgba(255,255,255,.90);text-shadow:0 1px 2px rgba(0,0,0,.10);}

@media (max-width:768px){
	.bb-hero--home .bb-hero__wrap{justify-content:center;}
	.bb-hero__panel{text-align:center;padding:24px 18px;}
}

.bb-home-cats,.bb-home-featured,.bb-home-cat-products,.bb-home-features,.bb-home-testimonials{padding:64px 0;}

.bb-section__head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:16px;margin-bottom:32px;}
.bb-section__title{margin:0;font-size:1.8rem;font-weight:800;line-height:1.2;position:relative;display:inline-block;}
.bb-section__title::after{content:"";position:absolute;bottom:-10px;right:0;width:60px;height:4px;background:var(--bb-primary);border-radius:4px;}
.bb-section__title i{color:var(--bb-primary);margin-left:8px;}
.bb-section__link{color:var(--bb-primary);font-weight:600;min-height:44px;display:inline-flex;align-items:center;gap:8px;transition:var(--bb-transition);}
.bb-section__link i{transition:transform .2s;}
@media (hover:hover){
	.bb-section__link:hover{color:var(--bb-primary-dark);gap:12px;}
	.bb-section__link:hover i{transform:translateX(-4px);}
}

.bb-scroll-row{
	display:flex;
	gap:12px;
	overflow-x:auto;
	scroll-snap-type:x mandatory;
	-webkit-overflow-scrolling:touch;
	padding-bottom:6px;
}
.bb-scroll-row > *{flex:0 0 auto;scroll-snap-align:start;}
.bb-scroll-row::-webkit-scrollbar{height:8px;}
.bb-scroll-row::-webkit-scrollbar-thumb{background:var(--bb-border);border-radius:999px;}

@media (min-width:1024px){
	.bb-scroll-row{
		overflow:visible;
		scroll-snap-type:none;
		display:grid;
		grid-template-columns:repeat(4,minmax(0,1fr));
	}
	.bb-scroll-row > *{flex:unset;}
}

.bb-cats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px;max-width:1000px;margin:0 auto;}
@media (max-width:768px){
	.bb-cats-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;}
}

.bb-cat-card{
	width:100%;
	padding:24px 16px;
	text-align:center;
	background:var(--bb-card);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	box-shadow:var(--bb-shadow-sm);
	transition:var(--bb-transition);
	display:flex;
	flex-direction:column;
	gap:16px;
	align-items:center;
}
.bb-scroll-row .bb-cat-card{width:150px;}
.bb-cat-card__thumb{
	width:100%;
	aspect-ratio:1/1;
	border-radius:var(--bb-radius-card);
	border:0;
	background:transparent;
	object-fit:cover;
}
.bb-cat-card__icon{font-size:3rem;color:var(--bb-primary);margin-bottom:4px;line-height:1;}
.bb-cat-card__name{
	font-weight:700;
	font-size:1rem;
	text-align:center;
	line-height:1.3;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

@media (hover:hover){
	.bb-cat-card:hover{transform:translateY(-6px);box-shadow:var(--bb-shadow-hover);border-color:rgba(255,255,255,.8);background:rgba(255,255,255,.30);}
	body.dark .bb-cat-card:hover{background:rgba(0,0,0,.50);}
}

.bb-products-scroll{
	list-style:none;
	margin:0;
	padding:0;
}

.bb-products-scroll.bb-scroll-row > li{width:260px;}
@media (min-width:1024px){
	.bb-products-scroll.bb-scroll-row > li{width:auto;}
}

.bb-products-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:32px;margin-bottom:48px;}

.bb-features-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
@media (min-width:768px){
	.bb-features-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
}

.bb-features-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin-top:32px;}
.bb-feature-card{padding:32px 16px;text-align:center;border-radius:var(--bb-radius-card);background:var(--bb-card);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:var(--bb-transition);border:1px solid var(--bb-border);box-shadow:var(--bb-shadow-sm);}
@media (hover:hover){
	.bb-feature-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.30);}
	body.dark .bb-feature-card:hover{background:rgba(0,0,0,.50);}
}
.bb-feature-card__icon{font-size:2.5rem;color:var(--bb-primary);margin-bottom:16px;}
.bb-feature-card__title{margin:0 0 8px 0;font-size:1rem;font-weight:700;color:var(--bb-text);}
.bb-feature-card__desc{margin:0;color:var(--bb-text-2);font-size:.9rem;}


.bb-testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-top:32px;}
.bb-testimonial-card{background:var(--bb-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:24px;padding:32px;box-shadow:var(--bb-shadow-md);transition:var(--bb-transition);border:1px solid var(--bb-border);position:relative;}
@media (hover:hover){
	.bb-testimonial-card:hover{transform:translateY(-4px);box-shadow:var(--bb-shadow-hover);background:rgba(255,255,255,.30);}
	body.dark .bb-testimonial-card:hover{background:rgba(0,0,0,.50);}
}
.bb-testimonial-card__quote{font-size:2rem;color:var(--bb-primary);opacity:.5;position:absolute;top:16px;right:24px;font-family:serif;}
.bb-testimonial-card__text{font-size:1rem;line-height:1.6;margin:16px 0 24px;color:var(--bb-text);font-weight:500;}
.bb-testimonial-card__author{display:flex;align-items:center;gap:12px;border-top:1px solid var(--bb-border);padding-top:16px;margin-top:8px;}
.bb-testimonial-card__author i{font-size:2rem;color:var(--bb-primary);}
.bb-testimonial-card__name{font-size:1rem;font-weight:700;margin:0;color:var(--bb-text);}
.bb-testimonial-card__role{font-size:.8rem;color:var(--bb-text-2);margin:0;}

.woocommerce ul.products{margin:0;padding:0;}
.woocommerce ul.products li.product{list-style:none;}
.woocommerce a.button{box-shadow:none;}

.woocommerce ul.products:not(.bb-scroll-row){
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
	gap:32px;
}

body.woocommerce-shop .bb-page-card,
body.tax-product_cat .bb-page-card,
body.tax-product_tag .bb-page-card{
	background:transparent;
	border:0;
	box-shadow:none;
	padding:0;
}

.bb-breadcrumb{margin:0 0 18px 0;}
.bb-breadcrumb ul{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap;}
.bb-breadcrumb li{color:var(--bb-text-2);font-weight:800;font-size:13px;}
.bb-breadcrumb a{color:var(--bb-primary);font-weight:900;text-decoration:none;}
.bb-breadcrumb li:not(:last-child)::after{content:"/";margin:0 6px;color:var(--bb-text-2);}

.bb-shop-page{padding:8px 0 0 0;}
.bb-shop-layout{display:grid;grid-template-columns:1fr;gap:24px;}
@media (min-width:1024px){
	.bb-shop-layout{grid-template-columns:280px 1fr;gap:32px;align-items:start;}
}

.bb-shop-filters{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	padding:16px;
	box-shadow:var(--bb-shadow-sm);
}
@media (min-width:1024px){
	.bb-shop-filters{position:sticky;top:100px;}
}

.bb-filter-widget{margin:0 0 16px 0;}
.bb-filter-widget:last-of-type{margin-bottom:12px;}
.bb-filter-title{
	font-weight:900;
	margin:0 0 12px 0;
	font-size:16px;
	position:relative;
	display:inline-block;
	color:var(--bb-text);
}
.bb-filter-title::after{
	content:"";
	position:absolute;
	bottom:-6px;
	right:0;
	width:40px;
	height:2px;
	background:var(--bb-primary);
}

.bb-shop-filters ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.bb-shop-filters a{color:var(--bb-text);font-weight:800;text-decoration:none;}
.bb-shop-filters .current-cat > a{color:var(--bb-primary);}

.bb-shop-filters .price_slider_wrapper{margin-top:8px;}
.bb-shop-filters .price_slider{margin:10px 6px 14px;}
.bb-shop-filters .price_slider_amount{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	font-weight:800;
	color:var(--bb-text-2);
}
.bb-shop-filters .price_slider_amount .button{
	min-height:40px;
	padding:10px 12px;
	border-radius:999px;
}

.bb-clear-filters{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:44px;
	padding:12px 14px;
	border-radius:999px;
	border:1px solid var(--bb-border);
	background:var(--bb-surface);
	color:var(--bb-text);
	font-weight:900;
}
@media (hover:hover){
	.bb-clear-filters:hover{background:var(--bb-primary);border-color:var(--bb-primary);color:#ffffff;transition:border-color 180ms,background-color 180ms,color 180ms;}
}

.bb-products-header{
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
	gap:16px;
	margin:0 0 24px 0;
	padding:16px;
	background:var(--bb-card);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
}

.bb-results-count{
	color:var(--bb-text-2);
	font-weight:600;
	font-size:14px;
}

.bb-shop-sorting .orderby{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	padding:8px 12px;
	border-radius:var(--bb-radius);
	color:var(--bb-text);
	cursor:pointer;
	outline:none;
	font-family:var(--bb-font);
	font-weight:600;
}

body.woocommerce-shop .bb-woo-toolbar,
body.tax-product_cat .bb-woo-toolbar,
body.tax-product_tag .bb-woo-toolbar{
	border:0;
	background:transparent;
	padding:0;
	margin:0 0 24px 0;
}

body.woocommerce-shop .woocommerce ul.products:not(.bb-scroll-row),
body.tax-product_cat .woocommerce ul.products:not(.bb-scroll-row),
body.tax-product_tag .woocommerce ul.products:not(.bb-scroll-row){
	grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
	gap:32px;
}

/* === CUSTOM CART PAGE STYLING === */
.bb-cart-section{
	padding:64px 0;
	min-height:60vh;
}

.bb-cart-title{
	font-size:32px;
	font-weight:800;
	color:var(--bb-text);
	margin-bottom:32px;
	position:relative;
	display:inline-block;
}

.bb-cart-title:after{
	content:'';
	position:absolute;
	bottom:-10px;
	right:0;
	width:60px;
	height:4px;
	background:var(--bb-primary);
	border-radius:4px;
}

.bb-cart-container{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	padding:32px;
	box-shadow:var(--bb-shadow-md);
}

.bb-cart-table{
	width:100%;
	border-collapse:collapse;
}

.bb-cart-table th{
	text-align:right;
	padding:16px 8px;
	border-bottom:1px solid var(--bb-border);
	color:var(--bb-text-2);
	font-weight:600;
}

.bb-cart-table td{
	padding:16px 8px;
	border-bottom:1px solid var(--bb-border);
	vertical-align:middle;
}

.bb-cart-product-info{
	display:flex;
	align-items:center;
	gap:16px;
}

.bb-cart-product-image{
	width:70px;
	height:70px;
	object-fit:cover;
	border-radius:12px;
	background:rgba(0,0,0,0.1);
}

.bb-cart-product-name{
	font-weight:700;
	color:var(--bb-text);
}

.bb-quantity-control{
	display:flex;
	align-items:center;
	gap:8px;
}

.bb-quantity-btn{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	width:32px;
	height:32px;
	border-radius:8px;
	cursor:pointer;
	transition:var(--bb-transition);
	color:var(--bb-text);
	font-weight:bold;
	font-family:var(--bb-font);
}

.bb-quantity-btn:hover{
	background:var(--bb-primary);
	color:#ffffff;
	border-color:var(--bb-primary);
}

.bb-quantity-input{
	width:50px;
	text-align:center;
	background:transparent;
	border:1px solid var(--bb-border);
	border-radius:8px;
	padding:4px;
	color:var(--bb-text);
	font-family:var(--bb-font);
}

.bb-remove-btn{
	background:none;
	border:none;
	color:var(--bb-primary);
	cursor:pointer;
	font-size:20px;
	transition:var(--bb-transition);
	padding:4px;
}

.bb-remove-btn:hover{
	color:var(--bb-primary-dark);
	transform:scale(1.1);
}

.bb-cart-summary{
	margin-top:32px;
	text-align:left;
	display:flex;
	justify-content:flex-end;
}

.bb-summary-card{
	background:var(--bb-surface);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
	border-radius:var(--bb-radius-card);
	padding:24px;
	width:300px;
	border:1px solid var(--bb-border);
}

.bb-summary-row{
	display:flex;
	justify-content:space-between;
	margin-bottom:16px;
	font-size:16px;
}

.bb-summary-total{
	font-size:20px;
	font-weight:800;
	color:var(--bb-primary);
	border-top:1px solid var(--bb-border);
	padding-top:16px;
	margin-top:8px;
}

.bb-checkout-btn{
	background:var(--bb-primary);
	color:#ffffff;
	border:none;
	padding:12px 24px;
	border-radius:var(--bb-radius-btn);
	font-weight:600;
	cursor:pointer;
	transition:var(--bb-transition);
	width:100%;
	margin-top:16px;
	font-size:16px;
	font-family:var(--bb-font);
}

.bb-checkout-btn:hover{
	background:var(--bb-primary-dark);
	transform:translateY(-2px);
	box-shadow:0 4px 12px rgba(227,63,63,0.3);
}

.bb-empty-cart{
	text-align:center;
	padding:48px;
	color:var(--bb-text-2);
}

.bb-empty-cart i{
	font-size:64px;
	margin-bottom:16px;
	opacity:0.5;
}

.bb-continue-shop{
	display:inline-block;
	margin-top:16px;
	background:var(--bb-primary);
	color:#ffffff;
	padding:12px 24px;
	border-radius:var(--bb-radius-btn);
	text-decoration:none;
	font-weight:600;
	transition:var(--bb-transition);
	font-family:var(--bb-font);
}

.bb-continue-shop:hover{
	background:var(--bb-primary-dark);
	transform:translateY(-2px);
	color:#ffffff;
}

/* Responsive Design */
@media (max-width:768px){
	.bb-cart-table thead{
		display:none;
	}
	
	.bb-cart-table,
	.bb-cart-table tbody,
	.bb-cart-table tr,
	.bb-cart-table td{
		display:block;
		width:100%;
	}
	
	.bb-cart-table tr{
		margin-bottom:16px;
		border:1px solid var(--bb-border);
		border-radius:var(--bb-radius-card);
		padding:16px;
		background:var(--bb-surface);
	}
	
	.bb-cart-table td{
		display:flex;
		justify-content:space-between;
		align-items:center;
		text-align:right;
		border-bottom:none;
		padding:8px 0;
	}
	
	.bb-cart-table td:before{
		content:attr(data-label);
		font-weight:600;
		margin-left:16px;
		color:var(--bb-text-2);
	}
	
	.bb-cart-product-info{
		flex-direction:column;
		align-items:flex-start;
	}
	
	.bb-summary-card{
		width:100%;
	}
	
	.bb-cart-container{
		padding:16px;
	}
}

/* === BREADCRUMB STYLING === */
.bb-breadcrumb{
	padding:24px 0;
	background:transparent;
}

.bb-breadcrumb ul{
	display:flex;
	list-style:none;
	gap:8px;
	flex-wrap:wrap;
	margin:0;
	padding:0;
}

.bb-breadcrumb li{
	color:var(--bb-text-2);
	font-size:14px;
}

.bb-breadcrumb li a{
	color:var(--bb-primary);
	text-decoration:none;
	transition:var(--bb-transition);
}

.bb-breadcrumb li a:hover{
	text-decoration:underline;
}

.bb-breadcrumb li:not(:last-child):after{
	content:'/';
	margin:0 8px;
	color:var(--bb-text-2);
}

/* === SINGLE PRODUCT PAGE STYLING === */
.bb-product-page{
	padding:32px 0 64px;
}

.bb-product-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:48px;
	margin-bottom:64px;
}

@media (min-width:768px){
	.bb-product-grid{
		grid-template-columns:1fr 1fr;
	}
}

/* === PRODUCT GALLERY === */
.bb-product-gallery{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	padding:16px;
	border:1px solid var(--bb-border);
	position:relative;
}

.bb-sale-badge{
	position:absolute;
	top:24px;
	right:24px;
	background:var(--bb-primary);
	color:#ffffff;
	padding:6px 12px;
	border-radius:20px;
	font-size:12px;
	font-weight:700;
	z-index:2;
	box-shadow:var(--bb-shadow-sm);
}

.bb-main-image{
	width:100%;
	aspect-ratio:1;
	object-fit:cover;
	border-radius:var(--bb-radius-card);
	margin-bottom:16px;
	cursor:zoom-in;
	transition:var(--bb-transition);
}

.bb-main-image--empty{
	display:flex;
	align-items:center;
	justify-content:center;
	background:var(--bb-surface);
	color:var(--bb-text-2);
	font-weight:600;
	cursor:default;
}

.bb-main-image:hover{
	transform:scale(1.02);
}

.bb-thumbnails{
	display:flex;
	gap:12px;
	justify-content:center;
	flex-wrap:wrap;
}

.bb-thumbnail{
	width:70px;
	height:70px;
	object-fit:cover;
	border-radius:8px;
	cursor:pointer;
	border:2px solid transparent;
	transition:var(--bb-transition);
	opacity:0.7;
}

.bb-thumbnail.active{
	border-color:var(--bb-primary);
	opacity:1;
}

.bb-thumbnail:hover{
	transform:scale(1.1);
	opacity:1;
	border-color:var(--bb-primary-light);
}

/* === PRODUCT INFO === */
.bb-product-info{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	padding:32px;
	border:1px solid var(--bb-border);
}

.bb-product-title{
	font-size:28px;
	font-weight:800;
	color:var(--bb-text);
	margin:0 0 16px 0;
	line-height:1.2;
}

.bb-product-price{
	display:flex;
	align-items:center;
	gap:16px;
	margin-bottom:16px;
}

.bb-price-current{
	font-size:28px;
	font-weight:800;
	color:var(--bb-primary);
}

.bb-old-price{
	font-size:20px;
	color:var(--bb-text-2);
	text-decoration:line-through;
}

.bb-product-rating{
	display:flex;
	align-items:center;
	gap:8px;
	margin-bottom:24px;
	color:#f4b942;
}

.bb-product-stock{
	font-weight:600;
	margin-bottom:16px;
	display:flex;
	align-items:center;
	gap:8px;
}

.bb-product-stock--in{
	color:#2ecc71;
}

.bb-product-stock--out{
	color:#e74c3c;
}

.bb-product-description{
	margin:24px 0;
	color:var(--bb-text-2);
	line-height:1.8;
}

.bb-quantity-selector{
	display:flex;
	align-items:center;
	gap:16px;
	margin:24px 0;
}

.bb-quantity-control{
	display:flex;
	align-items:center;
	gap:8px;
}

.bb-quantity-btn{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	width:36px;
	height:36px;
	border-radius:8px;
	cursor:pointer;
	font-size:18px;
	transition:var(--bb-transition);
	color:var(--bb-text);
}

.bb-quantity-btn:hover{
	background:var(--bb-primary);
	color:#ffffff;
	border-color:var(--bb-primary);
}

.bb-quantity-input{
	width:60px;
	text-align:center;
	background:transparent;
	border:1px solid var(--bb-border);
	border-radius:8px;
	padding:8px;
	color:var(--bb-text);
	font-family:var(--bb-font);
}

.bb-product-info .bb-add-to-cart{
	background:var(--bb-primary);
	color:#ffffff;
	border:none;
	padding:12px 32px;
	border-radius:var(--bb-radius-btn);
	font-weight:600;
	cursor:pointer;
	transition:var(--bb-transition);
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-family:var(--bb-font);
	font-size:16px;
}

.bb-product-info .bb-add-to-cart:hover{
	background:var(--bb-primary-dark);
	transform:translateY(-2px);
	box-shadow:0 4px 12px rgba(227,63,63,0.3);
}

.bb-product-info .bb-add-to-cart.bb-disabled{
	background:var(--bb-text-3);
	color:var(--bb-text-2);
	cursor:not-allowed;
}

.bb-product-info .bb-add-to-cart.bb-disabled:hover{
	transform:none;
	box-shadow:none;
}

.bb-product-meta{
	border-top:1px solid var(--bb-border);
	padding-top:16px;
	margin-top:16px;
	font-size:14px;
}

.bb-product-meta p{
	margin-bottom:8px;
}

/* === PRODUCT TABS === */
.bb-product-tabs{
	margin-bottom:64px;
}

.bb-tabs-header{
	display:flex;
	gap:16px;
	border-bottom:1px solid var(--bb-border);
	margin-bottom:32px;
}

.bb-tab-btn{
	background:none;
	border:none;
	padding:12px 24px;
	font-size:16px;
	font-weight:600;
	color:var(--bb-text-2);
	cursor:pointer;
	transition:var(--bb-transition);
	position:relative;
	font-family:var(--bb-font);
}

.bb-tab-btn.active{
	color:var(--bb-primary);
}

.bb-tab-btn.active:after{
	content:'';
	position:absolute;
	bottom:-1px;
	right:0;
	width:100%;
	height:2px;
	background:var(--bb-primary);
}

.bb-tab-content{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	padding:32px;
	border:1px solid var(--bb-border);
}

.bb-tab-pane{
	display:none;
}

.bb-tab-pane.active{
	display:block;
}

/* === RELATED PRODUCTS === */
.bb-related-products h3{
	font-size:24px;
	font-weight:800;
	color:var(--bb-text);
	margin-bottom:24px;
}

.bb-related-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));
	gap:32px;
}

.bb-related-card{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	overflow:hidden;
	transition:var(--bb-transition);
	border:1px solid var(--bb-border);
	text-decoration:none;
	color:inherit;
}

.bb-related-card:hover{
	transform:translateY(-6px);
	box-shadow:var(--bb-shadow-hover);
	background:rgba(255,255,255,0.3);
}

body.bb-dark .bb-related-card:hover{
	background:rgba(0,0,0,0.5);
}

.bb-related-img{
	width:100%;
	aspect-ratio:1;
	object-fit:cover;
}

.bb-related-img--empty{
	display:flex;
	align-items:center;
	justify-content:center;
	background:var(--bb-surface);
	color:var(--bb-text-2);
	font-weight:600;
}

.bb-related-info{
	padding:16px;
}

.bb-related-title{
	font-weight:700;
	margin-bottom:8px;
	color:var(--bb-text);
}

.bb-related-price{
	color:var(--bb-primary);
	font-weight:800;
}

@media (max-width:768px){
	.bb-breadcrumb{
		padding:16px 0;
	}
	
	.bb-product-page{
		padding:16px 0 32px;
	}
	
	.bb-product-grid{
		gap:24px;
		margin-bottom:32px;
	}
	
	.bb-product-gallery{
		padding:12px;
	}
	
	.bb-sale-badge{
		top:16px;
		right:16px;
		font-size:11px;
		padding:4px 8px;
	}
	
	.bb-thumbnails{
		gap:8px;
		overflow-x:auto;
		padding-bottom:4px;
	}
	
	.bb-thumbnail{
		width:60px;
		height:60px;
		flex-shrink:0;
	}
	
	.bb-product-info{
		padding:20px;
	}
	
	.bb-product-title{
		font-size:24px;
	}
	
	.bb-product-price{
		flex-wrap:wrap;
		gap:12px;
	}
	
	.bb-price-current{
		font-size:24px;
	}
	
	.bb-old-price{
		font-size:18px;
	}
	
	.bb-quantity-selector{
		flex-direction:column;
		align-items:flex-start;
		gap:12px;
	}
	
	.bb-quantity-control{
		width:100%;
		justify-content:center;
	}
	
	.bb-add-to-cart{
		width:100%;
		justify-content:center;
		padding:14px 20px;
		font-size:16px;
	}
	
	.bb-tabs-header{
		flex-wrap:wrap;
		gap:8px;
		margin-bottom:16px;
	}
	
	.bb-tab-btn{
		padding:8px 16px;
		font-size:14px;
		flex:1;
		min-width:auto;
	}
	
	.bb-tab-content{
		padding:20px;
	}
	
	.bb-related-grid{
		grid-template-columns:repeat(2, 1fr);
		gap:16px;
	}
}

@media (max-width:480px){
	.bb-product-info{
		padding:16px;
	}
	
	.bb-product-title{
		font-size:20px;
		line-height:1.3;
	}
	
	.bb-price-current{
		font-size:20px;
	}
	
	.bb-old-price{
		font-size:16px;
	}
	
	.bb-tab-btn{
		padding:6px 12px;
		font-size:13px;
	}
	
	.bb-tab-content{
		padding:16px;
	}
	
	.bb-related-grid{
		grid-template-columns:1fr;
		gap:12px;
	}
}

/* === IMPROVED PRODUCT CARD STYLING === */
.bb-product-card{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	box-shadow:0 14px 30px rgba(12,16,28,.08);
	overflow:hidden;
	transition:var(--bb-transition);
	display:flex;
	flex-direction:column;
	height:100%;
}

.bb-product-card:hover{
	transform:translateY(-8px);
	box-shadow:0 20px 40px rgba(12,16,28,.14);
}

.bb-product-card__link{
	text-decoration:none;
	color:inherit;
	flex:1;
	display:flex;
	flex-direction:column;
}

.bb-product-card__image{
	position:relative;
	aspect-ratio:4/3;
	background:var(--bb-surface);
	overflow:hidden;
}

.bb-product-card__image::after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(to top, rgba(0,0,0,.22) 0%, rgba(0,0,0,0) 60%);
	opacity:.15;
	transition:var(--bb-transition);
}

.bb-product-card__image img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
	object-position:center;
	transition:var(--bb-transition);
}

.bb-product-card__image-empty{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	background:var(--bb-surface);
	color:var(--bb-text-2);
	font-weight:600;
	font-size:14px;
}

.bb-product-card:hover .bb-product-card__image img{
	transform:scale(1.05);
}

.bb-sale-badge,
.bb-featured-badge{
	position:absolute;
	top:12px;
	right:12px;
	padding:4px 10px;
	border-radius:16px;
	font-size:12px;
	font-weight:600;
	z-index:2;
}

.bb-sale-badge{
	background:var(--bb-primary);
	color:#ffffff;
}

.bb-featured-badge{
	background:var(--bb-accent);
	color:#1a1a1a;
	top:12px;
	left:12px;
	right:auto;
}

.bb-product-card__info{
	padding:10px 10px 8px;
	flex:1;
	display:flex;
	flex-direction:column;
	gap:4px;
}

.bb-product-card__cat{
	align-self:flex-start;
	font-size:11px;
	font-weight:700;
	padding:5px 10px;
	border-radius:999px;
	color:var(--bb-primary);
	background:rgba(227,63,63,.10);
	border:1px solid rgba(227,63,63,.20);
}

.bb-product-card__title{
	margin:0;
	font-size:14px;
	font-weight:800;
	line-height:1.4;
	min-height:32px;
}

.bb-product-card__price{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
	margin:6px 0;
}

.bb-price--current{
	font-size:18px;
	font-weight:800;
	color:var(--bb-primary);
}

.bb-price--old{
	font-size:14px;
	color:var(--bb-text-2);
	text-decoration:line-through;
}

.bb-price--sale{
	color:#059669;
}

.bb-product-card__excerpt{
	font-size:13px;
	color:var(--bb-text-2);
	line-height:1.4;
	margin-top:auto;
	min-height:0;
	display:-webkit-box;
	-webkit-line-clamp:1;
	line-clamp:1;
	-webkit-box-orient:vertical;
	overflow:hidden;
}

.bb-product-card__excerpt.is-empty{
	visibility:hidden;
}

.bb-product-card__actions{
	padding:10px 12px;
	display:flex;
	gap:8px;
	border-top:1px solid var(--bb-border);
	background:linear-gradient(180deg, rgba(255,255,255,0) 0%, var(--bb-surface) 45%);
}

.bb-product-card__actions .bb-btn{
	min-height:40px;
	width:100%;
	border-radius:14px;
}

.bb-add-to-cart{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:10px 16px;
	background:linear-gradient(135deg, var(--bb-primary) 0%, var(--bb-primary-dark) 100%);
	color:#ffffff;
	border:none;
	border-radius:var(--bb-radius);
	font-weight:700;
	font-family:var(--bb-font);
	cursor:pointer;
	transition:var(--bb-transition);
	text-decoration:none;
	box-shadow:0 10px 20px rgba(227,63,63,.24);
}

.bb-add-to-cart:hover{
	background:linear-gradient(135deg, var(--bb-primary-dark) 0%, var(--bb-primary) 100%);
	transform:translateY(-2px);
	color:#ffffff;
}

.bb-btn--disabled{
	background:var(--bb-text-3);
	color:var(--bb-text-2);
	cursor:not-allowed;
}

.bb-btn--disabled:hover{
	background:var(--bb-text-3);
	transform:none;
}

/* === MODAL SYSTEM === */
.bb-modal{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:9999;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:20px;
}

.bb-modal__backdrop{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.5);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
}

.bb-modal__content{
	background:var(--bb-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	box-shadow:var(--bb-shadow-lg);
	max-width:500px;
	width:100%;
	max-height:90vh;
	overflow-y:auto;
	position:relative;
	z-index:2;
}

.bb-modal__header{
	padding:24px 24px 0;
	display:flex;
	align-items:center;
	justify-content:space-between;
	border-bottom:1px solid var(--bb-border);
	margin-bottom:24px;
}

.bb-modal__header h3{
	margin:0;
	font-size:20px;
	font-weight:700;
	color:var(--bb-text);
}

.bb-modal__close{
	background:none;
	border:none;
	font-size:24px;
	cursor:pointer;
	color:var(--bb-text-2);
	transition:var(--bb-transition);
	padding:4px;
	border-radius:4px;
}

.bb-modal__close:hover{
	background:var(--bb-surface);
	color:var(--bb-text);
}

.bb-modal__body{
	padding:0 24px 24px;
}

/* === CHECKOUT FORM === */
.bb-checkout-form{
	display:flex;
	flex-direction:column;
	gap:20px;
}

.bb-form-group{
	display:flex;
	flex-direction:column;
	gap:8px;
}

.bb-form-group label{
	font-weight:600;
	color:var(--bb-text);
	font-size:14px;
}

.bb-form-group input,
.bb-form-group textarea{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:12px 16px;
	color:var(--bb-text);
	font-family:var(--bb-font);
	font-size:14px;
	transition:var(--bb-transition);
}

.bb-form-group input:focus,
.bb-form-group textarea:focus{
	outline:none;
	border-color:var(--bb-primary);
	box-shadow:0 0 0 3px rgba(227,63,63,0.1);
}

.bb-checkout-summary{
	background:var(--bb-surface);
	border-radius:var(--bb-radius);
	padding:16px;
	border:1px solid var(--bb-border);
}

.bb-checkout-summary .bb-summary-row{
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-weight:600;
	color:var(--bb-text);
}

.bb-form-actions{
	display:flex;
	gap:12px;
	justify-content:flex-end;
	margin-top:8px;
}

.bb-btn--secondary{
	background:var(--bb-surface);
	color:var(--bb-text);
	border:1px solid var(--bb-border);
}

.bb-btn--secondary:hover{
	background:var(--bb-text-3);
}

/* === SUCCESS MODAL === */
.bb-success-modal .bb-modal__content{
	max-width:400px;
	text-align:center;
}

.bb-success-content{
	padding:32px 24px;
}

.bb-success-content i{
	font-size:64px;
	color:#22c55e;
	margin-bottom:24px;
	display:block;
}

.bb-success-content h3{
	font-size:24px;
	font-weight:700;
	color:var(--bb-text);
	margin:0 0 16px 0;
}

.bb-success-content p{
	color:var(--bb-text-2);
	margin:8px 0;
	line-height:1.6;
}

.bb-success-content .bb-btn{
	margin-top:24px;
}

/* === NOTIFICATION SYSTEM === */
.bb-notification{
	position:fixed;
	top:24px;
	right:24px;
	background:var(--bb-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	padding:16px 20px;
	max-width:350px;
	min-width:280px;
	z-index:10000;
	box-shadow:var(--bb-shadow-lg);
	display:flex;
	align-items:center;
	gap:12px;
	font-family:var(--bb-font);
	font-size:14px;
	font-weight:500;
	transform:translateX(120%);
	opacity:0;
	transition:all 0.3s cubic-bezier(0.2, 0, 0, 1);
}

.bb-notification--show{
	transform:translateX(0);
	opacity:1;
}

.bb-notification--success{
	border-left:4px solid #22c55e;
	color:var(--bb-text);
}

.bb-notification--success i{
	color:#22c55e;
	font-size:18px;
}

.bb-notification--error{
	border-left:4px solid #ef4444;
	color:var(--bb-text);
}

.bb-notification--error i{
	color:#ef4444;
	font-size:18px;
}

.bb-notification span{
	flex:1;
	line-height:1.4;
}

/* === IMAGE GALLERY MODAL === */
.bb-gallery-modal{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:9999;
	background:rgba(0,0,0,0.9);
	display:flex;
	align-items:center;
	justify-content:center;
	padding:20px;
}

.bb-gallery-modal__content{
	position:relative;
	max-width:90vw;
	max-height:90vh;
	display:flex;
	align-items:center;
	justify-content:center;
}

.bb-gallery-modal__image{
	max-width:100%;
	max-height:100%;
	object-fit:contain;
	border-radius:var(--bb-radius);
	box-shadow:0 20px 60px rgba(0,0,0,0.5);
}

.bb-gallery-modal__close{
	position:absolute;
	top:-50px;
	right:-10px;
	background:rgba(255,255,255,0.1);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border:none;
	width:40px;
	height:40px;
	border-radius:50%;
	color:white;
	font-size:18px;
	cursor:pointer;
	transition:var(--bb-transition);
}

.bb-gallery-modal__close:hover{
	background:rgba(255,255,255,0.2);
	transform:scale(1.1);
}

.bb-gallery-modal__nav{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	background:rgba(255,255,255,0.1);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border:none;
	width:50px;
	height:50px;
	border-radius:50%;
	color:white;
	font-size:20px;
	cursor:pointer;
	transition:var(--bb-transition);
}

.bb-gallery-modal__nav:hover{
	background:rgba(255,255,255,0.2);
	transform:translateY(-50%) scale(1.1);
}

.bb-gallery-modal__nav--prev{
	left:-70px;
}

.bb-gallery-modal__nav--next{
	right:-70px;
}

/* === RESPONSIVE MODAL === */
@media (max-width:768px){
	.bb-notification{
		top:16px;
		right:16px;
		left:16px;
		max-width:none;
		min-width:auto;
	}
	
	.bb-modal{
		padding:16px;
	}
	
	.bb-modal__content{
		max-height:95vh;
	}
	
	.bb-modal__header{
		padding:20px 20px 0;
		margin-bottom:20px;
	}
	
	.bb-modal__body{
		padding:0 20px 20px;
	}
	
	.bb-form-actions{
		flex-direction:column-reverse;
	}
	
	.bb-form-actions .bb-btn{
		width:100%;
	}
	
	.bb-gallery-modal__close{
		top:16px;
		right:16px;
	}
	
	.bb-gallery-modal__nav{
		width:44px;
		height:44px;
		font-size:18px;
	}
	
	.bb-gallery-modal__nav--prev{
		left:16px;
	}
	
	.bb-gallery-modal__nav--next{
		right:16px;
	}
}

/* === MY ACCOUNT PAGE STYLING === */
.woocommerce-account{
	padding:8px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	padding:24px;
	border:1px solid var(--bb-border);
	box-shadow:var(--bb-shadow-sm);
	position:sticky;
	top:100px;
	height:fit-content;
}

.bb-account-user{
	text-align:center;
	padding:0 0 24px 0;
	border-bottom:1px solid var(--bb-border);
	margin:0 0 24px 0;
}

.bb-account-user__avatar-wrap{
	width:80px;
	height:80px;
	background:var(--bb-primary);
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto 16px auto;
	overflow:hidden;
}

.bb-account-user__avatar{
	width:100%;
	height:100%;
	border-radius:50%;
}

.bb-account-user__name{
	font-weight:700;
	font-size:18px;
	color:var(--bb-text);
	margin:0 0 4px 0;
}

.bb-account-user__email{
	font-size:14px;
	color:var(--bb-text-2);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul{
	list-style:none;
	margin:0;
	padding:0;
}

.woocommerce-account .woocommerce-MyAccount-navigation li{
	margin:0 0 8px 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a{
	display:flex;
	align-items:center;
	gap:12px;
	padding:12px 16px;
	border-radius:var(--bb-radius);
	text-decoration:none;
	color:var(--bb-text);
	transition:all 0.3s ease;
	font-weight:600;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:before{
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	width:20px;
	text-align:center;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
	background:var(--bb-surface);
	color:var(--bb-primary);
}

.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{
	background:var(--bb-primary);
	color:#ffffff;
}

/* Navigation icons */
.woocommerce-account .woocommerce-MyAccount-navigation a[href*="dashboard"]:before{
	content:"\f3fd"; /* fa-tachometer-alt */
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="orders"]:before{
	content:"\f466"; /* fa-box */
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="downloads"]:before{
	content:"\f019"; /* fa-download */
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="edit-address"]:before{
	content:"\f3c5"; /* fa-map-marker-alt */
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="edit-account"]:before{
	content:"\f007"; /* fa-user */
}

.woocommerce-account .woocommerce-MyAccount-navigation a[href*="customer-logout"]:before{
	content:"\f2f5"; /* fa-sign-out-alt */
}

/* Account content area */
.woocommerce-account .woocommerce-MyAccount-content{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	padding:32px;
	border:1px solid var(--bb-border);
	box-shadow:var(--bb-shadow-sm);
}

.woocommerce-account .woocommerce{
	display:grid;
	grid-template-columns:280px 1fr;
	gap:32px;
	align-items:start;
}

@media (max-width:1024px){
	.woocommerce-account .woocommerce{
		grid-template-columns:1fr;
		gap:24px;
	}
	
	.woocommerce-account .woocommerce-MyAccount-navigation{
		position:static;
	}
}

/* Section titles */
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3{
	font-size:24px;
	font-weight:800;
	margin:0 0 24px 0;
	color:var(--bb-text);
	position:relative;
}

.woocommerce-account .woocommerce-MyAccount-content h2:after,
.woocommerce-account .woocommerce-MyAccount-content h3:after{
	content:'';
	position:absolute;
	bottom:-8px;
	right:0;
	width:50px;
	height:3px;
	background:var(--bb-primary);
	border-radius:2px;
}

/* Forms styling */
.woocommerce-account .woocommerce-form-row{
	margin:0 0 16px 0;
}

.woocommerce-account .woocommerce-form-row label{
	display:block;
	margin:0 0 8px 0;
	font-weight:600;
	color:var(--bb-text);
}

.woocommerce-account .woocommerce-Input,
.woocommerce-account .input-text,
.woocommerce-account select,
.woocommerce-account textarea{
	width:100%;
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	padding:12px 16px;
	border-radius:var(--bb-radius);
	color:var(--bb-text);
	font-family:var(--bb-font);
	font-size:14px;
	transition:all 0.3s ease;
}

.woocommerce-account .woocommerce-Input:focus,
.woocommerce-account .input-text:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus{
	outline:none;
	border-color:var(--bb-primary);
	box-shadow:0 0 0 2px rgba(227,63,63,0.1);
}

.woocommerce-account .woocommerce-Button,
.woocommerce-account .button{
	background:var(--bb-primary);
	color:#ffffff;
	border:none;
	padding:12px 24px;
	border-radius:var(--bb-radius);
	font-weight:600;
	font-family:var(--bb-font);
	cursor:pointer;
	transition:all 0.3s ease;
	text-decoration:none;
	display:inline-block;
}

.woocommerce-account .woocommerce-Button:hover,
.woocommerce-account .button:hover{
	background:var(--bb-primary-dark);
	transform:translateY(-2px);
	box-shadow:var(--bb-shadow-md);
}

/* Orders table */
.woocommerce-account .shop_table{
	background:var(--bb-surface);
	border-radius:var(--bb-radius);
	border:1px solid var(--bb-border);
	overflow:hidden;
	margin:24px 0;
}

.woocommerce-account .shop_table th,
.woocommerce-account .shop_table td{
	padding:16px;
	text-align:right;
	border-bottom:1px solid var(--bb-border);
}

.woocommerce-account .shop_table th{
	background:var(--bb-card);
	font-weight:600;
	color:var(--bb-text);
}

.woocommerce-account .shop_table tbody tr:last-child td{
	border-bottom:none;
}

.woocommerce-account .shop_table .button{
	padding:8px 16px;
	font-size:12px;
}

/* Address cards */
.woocommerce-account .u-columns{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
	gap:24px;
	margin:24px 0;
}

.woocommerce-account .woocommerce-Address{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:20px;
}

.woocommerce-account .woocommerce-Address-title h3{
	font-size:18px;
	margin:0 0 16px 0;
}

.woocommerce-account .woocommerce-Address-title .edit{
	font-size:14px;
	margin:0 0 0 12px;
}

/* Dashboard styling */
.woocommerce-account .woocommerce-MyAccount-content p{
	line-height:1.6;
	color:var(--bb-text-2);
	margin:0 0 16px 0;
}

/* Responsive adjustments */
@media (max-width:768px){
	.woocommerce-account .woocommerce-MyAccount-content{
		padding:20px;
	}
	
	.woocommerce-account .shop_table{
		font-size:12px;
	}
	
	.woocommerce-account .shop_table th,
	.woocommerce-account .shop_table td{
		padding:8px;
	}
	
	.woocommerce-account .u-columns{
		grid-template-columns:1fr;
	}
}

.woocommerce .woocommerce-products-header{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	padding:12px;
	margin:0 0 14px 0;
}
.woocommerce .woocommerce-products-header:empty{display:none;}
.woocommerce .term-description,
.woocommerce .woocommerce-products-header .term-description,
.woocommerce .woocommerce-products-header__description{
	color:var(--bb-text-2);
	font-weight:700;
	font-size:13px;
	margin:8px 0 0 0;
}

.bb-woo-toolbar{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	padding:12px;
	margin:0 0 14px 0;
	display:flex;
	flex-direction:column;
	gap:10px;
}
.bb-woo-toolbar .woocommerce-result-count,
.bb-woo-toolbar .woocommerce-ordering{width:100%;}
.bb-woo-toolbar .woocommerce-ordering select{width:100%;}
@media (min-width:768px){
	.bb-woo-toolbar{flex-direction:row;align-items:center;justify-content:space-between;}
	.bb-woo-toolbar .woocommerce-ordering{margin-right:auto;}
	.bb-woo-toolbar .woocommerce-result-count,
	.bb-woo-toolbar .woocommerce-ordering{width:auto;}
	.bb-woo-toolbar .woocommerce-ordering select{width:auto;min-width:220px;}
}

.woocommerce-cart .cart-empty,
.woocommerce-cart .return-to-shop{
	text-align:center;
}

.woocommerce-cart .cart-empty{
	padding:48px 18px;
	color:var(--bb-text-2);
	font-weight:800;
}
.woocommerce-cart .cart-empty::before{
	content:"\f07a";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	font-size:56px;
	display:block;
	margin:0 0 12px 0;
	opacity:.5;
	color:var(--bb-text);
}

.bb-empty-cart-section{
	min-height:60vh;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:24px 0;
}
.bb-empty-cart-card{
	width:100%;
	max-width:520px;
	text-align:center;
	background:var(--bb-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	box-shadow:var(--bb-shadow-md);
	padding:26px 18px;
}
@media (min-width:768px){
	.bb-empty-cart-card{padding:32px 24px;}
}
.bb-empty-cart-icon{font-size:60px;color:var(--bb-primary);opacity:.70;margin:0 0 10px 0;}
.bb-empty-cart-title{margin:0 0 8px 0;font-size:28px;font-weight:900;color:var(--bb-text);}
.bb-empty-cart-message{margin:0 0 18px 0;color:var(--bb-text-2);font-weight:700;line-height:1.8;}
.bb-empty-cart-secondary{margin-top:12px;}
.bb-empty-cart-home{color:var(--bb-text-2);font-weight:900;text-decoration:none;}
@media (hover:hover){
	.bb-empty-cart-home:hover{color:var(--bb-primary);}
}

body.woocommerce-cart .bb-section__title{
	font-size:32px;
	margin-bottom:24px;
	position:relative;
	display:inline-block;
}
body.woocommerce-cart .bb-section__title::after{
	content:"";
	position:absolute;
	bottom:-10px;
	right:0;
	width:60px;
	height:4px;
	background:var(--bb-primary);
	border-radius:4px;
}

.bb-cart-container{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border-radius:var(--bb-radius-card);
	border:1px solid var(--bb-border);
	padding:20px;
	box-shadow:var(--bb-shadow-md);
}
@media (min-width:1024px){
	.bb-cart-container{padding:24px;}
}

.woocommerce-cart .woocommerce-cart-form{
	border:0;
	border-radius:0;
	background:transparent;
	padding:0;
	overflow:visible;
}
.woocommerce-cart .woocommerce-cart-form table.shop_table{
	margin:0;
	border:0;
	border-radius:0;
	background:transparent;
}
.woocommerce-cart .woocommerce-cart-form table.shop_table th{background:transparent;}

.woocommerce-cart .cross-sells{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	padding:12px;
	margin-top:14px;
}
.woocommerce-cart .cross-sells > h2{margin:0 0 12px 0;font-size:18px;font-weight:900;}
.woocommerce-cart .return-to-shop a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:52px;
	padding:12px 18px;
	border:1px solid var(--bb-accent);
	background:var(--bb-accent);
	color:#ffffff;
	font-weight:900;
	border-radius:var(--bb-radius);
}
@media (hover:hover){
	.woocommerce-cart .return-to-shop a:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);transition:border-color 180ms,background-color 180ms;}
}

.woocommerce div.product{
	display:flex;
	flex-direction:column;
	gap:14px;
}
@media (min-width:1024px){
	.woocommerce div.product{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:start;}
}
.woocommerce div.product .woocommerce-product-gallery{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	overflow:hidden;
	background:var(--bb-bg-2);
}
.woocommerce div.product .woocommerce-product-gallery img{width:100%;height:auto;}
.woocommerce div.product .flex-control-thumbs{
	display:flex;
	gap:10px;
	padding:10px;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	border-top:1px solid var(--bb-border);
	background:var(--bb-bg-2);
}
.woocommerce div.product .flex-control-thumbs::-webkit-scrollbar{height:8px;}
.woocommerce div.product .flex-control-thumbs::-webkit-scrollbar-thumb{background:var(--bb-border);border-radius:999px;}
.woocommerce div.product .flex-control-thumbs li{flex:0 0 auto;width:72px;}
.woocommerce div.product .flex-control-thumbs img{border:1px solid var(--bb-border);border-radius:14px;}
.woocommerce div.product .summary{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	padding:12px;
}
@media (min-width:1024px){
	.woocommerce div.product .summary{padding:16px;}
}

.woocommerce div.product .product_title{font-size:20px;font-weight:900;margin:0 0 8px 0;}
.woocommerce div.product p.price,
.woocommerce div.product span.price{font-size:22px;font-weight:900;color:var(--bb-text);}
.woocommerce div.product form.cart{margin-top:12px;}
.woocommerce div.product form.cart .button{
	width:100%;
	min-height:48px;
	border-radius:var(--bb-radius);
	border:1px solid var(--bb-border);
	background:var(--bb-accent);
	color:#ffffff;
	font-weight:900;
}
.woocommerce div.product form.cart .button:disabled{opacity:.55;cursor:not-allowed;}
@media (hover:hover){
	.woocommerce div.product form.cart .button:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);transition:border-color 180ms,background-color 180ms;}
}

.woocommerce table.shop_table{
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	overflow:hidden;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
	padding:12px 10px;
	border-bottom:1px solid var(--bb-border);
	vertical-align:middle;
}
.woocommerce table.shop_table th{
	background:transparent;
	color:var(--bb-text-2);
	font-weight:800;
	font-size:13px;
	text-align:start;
}

body.woocommerce-cart .woocommerce table.shop_table{
	border:0;
	background:transparent;
}

body.woocommerce-cart th.product-thumbnail,
body.woocommerce-cart td.product-thumbnail{display:none;}

.bb-cart-product{
	display:flex;
	align-items:center;
	gap:16px;
}
.bb-cart-thumb{
	width:70px;
	height:70px;
	border-radius:12px;
	object-fit:cover;
	background:rgba(0,0,0,0.1);
	border:1px solid var(--bb-border);
}
.bb-cart-product__name{min-width:0;}

.woocommerce-cart .product-name a{font-weight:900;color:var(--bb-text);}
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal{font-weight:900;white-space:nowrap;}
.woocommerce table.shop_table tr:last-child > *{border-bottom:0;}

.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	min-height:44px;
	padding:10px 12px;
}

.woocommerce .quantity .qty{min-height:44px;}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
	border-radius:var(--bb-radius);
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	padding:12px;
	margin:0 0 12px 0;
}

.woocommerce form .form-row{margin:0 0 12px 0;}
.woocommerce form .form-row:last-child{margin-bottom:0;}
.woocommerce form .form-row label{
	display:block;
	margin:0 0 6px 0;
	color:var(--bb-text-2);
	font-size:13px;
	font-weight:800;
}
.woocommerce form .form-row .required{color:var(--bb-accent);}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{width:100%;}

.woocommerce .select2-container--default .select2-selection--single{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	min-height:44px;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{
	line-height:44px;
	padding-left:12px;
	padding-right:12px;
	color:var(--bb-text);
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px;}
.woocommerce .select2-dropdown{
	border:1px solid var(--bb-border);
	background:var(--bb-surface);
	color:var(--bb-text);
}
.woocommerce .select2-results__option{padding:10px 12px;}

@media (max-width:1023px){
	.woocommerce table.shop_table_responsive{
		border:0;
		background:transparent;
	}
	.woocommerce table.shop_table_responsive thead{display:none;}
	.woocommerce table.shop_table_responsive tbody tr{
		display:block;
		border:1px solid var(--bb-border);
		border-radius:var(--bb-radius);
		background:var(--bb-surface);
		margin:0 0 12px 0;
		overflow:hidden;
	}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr{
		border-radius:var(--bb-radius-card);
		background:var(--bb-card);
	}
	.woocommerce table.shop_table_responsive tbody tr td{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:12px;
		padding:10px 12px;
		border-bottom:1px solid var(--bb-border);
	}
	.woocommerce table.shop_table_responsive tbody tr td::before{
		content:attr(data-title);
		color:var(--bb-text-2);
		font-weight:800;
		font-size:13px;
	}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-name{
		flex-direction:column;
		align-items:flex-start;
		justify-content:flex-start;
	}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-name::before{
		content:"المنتج";
		margin:0 0 8px 0;
	}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-price::before{content:"السعر";}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-quantity::before{content:"الكمية";}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-subtotal::before{content:"الإجمالي";}
	body.woocommerce-cart .woocommerce table.shop_table_responsive tbody tr td.product-remove::before{content:"";}

	body.woocommerce-cart .bb-cart-product{
		flex-direction:column;
		align-items:flex-start;
		gap:10px;
	}
	.woocommerce table.shop_table_responsive tbody tr td:last-child{border-bottom:0;}
	.woocommerce table.shop_table_responsive tbody tr td.product-remove::before,
	.woocommerce table.shop_table_responsive tbody tr td.actions::before{content:"";display:none;}
	.woocommerce table.shop_table_responsive tbody tr td.product-remove{justify-content:flex-end;}
	.woocommerce table.shop_table_responsive tbody tr td.actions{display:block;}
}

.woocommerce-cart .woocommerce-cart-form .button{
	min-height:44px;
	padding:12px 14px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	color:var(--bb-text);
	font-weight:900;
}
.woocommerce-cart .woocommerce-cart-form .button:disabled{opacity:.55;cursor:not-allowed;}
@media (hover:hover){
	.woocommerce-cart .woocommerce-cart-form .button:hover{border-color:var(--bb-primary-dark);transition:border-color 180ms;}
}

.woocommerce-cart a.remove{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:44px;
	height:44px;
	border:0;
	border-radius:999px;
	background:transparent;
	color:var(--bb-primary);
	font-size:18px;
	line-height:1;
	text-decoration:none;
	transition:var(--bb-transition);
}
.woocommerce-cart a.remove{font-size:0;}
.woocommerce-cart a.remove::before{
	content:"\f2ed";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	font-size:18px;
}
@media (hover:hover){
	.woocommerce-cart a.remove:hover{color:var(--bb-primary-dark);transform:scale(1.08);}
}

.woocommerce-cart .quantity{
	display:flex;
	align-items:center;
	gap:8px;
}
.woocommerce-cart .quantity .qty{
	width:50px;
	text-align:center;
	background:transparent;
	border:1px solid var(--bb-border);
	border-radius:8px;
	padding:4px 6px;
}
.bb-qty-btn{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	width:32px;
	height:32px;
	border-radius:8px;
	cursor:pointer;
	transition:var(--bb-transition);
	color:var(--bb-text);
	font-weight:900;
	line-height:1;
	display:inline-flex;
	align-items:center;
	justify-content:center;
}
@media (hover:hover){
	.bb-qty-btn:hover{background:var(--bb-primary);color:#fff;border-color:var(--bb-primary);}
}

.woocommerce-cart td.product-thumbnail img{
	width:72px;
	height:auto;
	border-radius:14px;
	border:1px solid var(--bb-border);
	background:var(--bb-bg-2);
}
.woocommerce-cart td.product-name a{font-weight:900;}
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal{font-weight:900;white-space:nowrap;}
.woocommerce-cart .quantity .qty{width:84px;text-align:center;}

.woocommerce-cart td.actions{background:var(--bb-bg-2);}
.woocommerce-cart td.actions .coupon{
	display:flex;
	flex-direction:column;
	gap:10px;
	align-items:stretch;
	margin:0 0 10px 0;
}
@media (min-width:640px){
	.woocommerce-cart td.actions .coupon{flex-direction:row;align-items:center;}
}
.woocommerce-cart td.actions .coupon label{font-weight:800;color:var(--bb-text-2);font-size:13px;}
.woocommerce-cart td.actions .coupon input.input-text{flex:1;min-width:180px;}
.woocommerce-cart td.actions button.button,
.woocommerce-cart td.actions input.button{width:100%;}
@media (min-width:640px){
	.woocommerce-cart td.actions button.button,
	.woocommerce-cart td.actions input.button{width:auto;}
}

.woocommerce-cart .cart-collaterals{
	margin-top:14px;
	display:flex;
	flex-direction:column;
	gap:14px;
}

.woocommerce-cart .cart_totals{
	margin-top:32px;
	display:flex;
	justify-content:flex-end;
	text-align:left;
}
.woocommerce-cart .cart_totals .bb-cart-summary{
	background:var(--bb-surface);
	backdrop-filter:blur(4px);
	-webkit-backdrop-filter:blur(4px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	padding:18px;
	width:300px;
	max-width:100%;
}
body.woocommerce-cart .cart_totals h2{display:none;}
.woocommerce-cart .cart_totals .bb-cart-summary table{
	border:0;
	background:transparent;
}
.woocommerce-cart .cart_totals .bb-cart-summary table tr.order-total th,
.woocommerce-cart .cart_totals .bb-cart-summary table tr.order-total td{
	border-top:1px solid var(--bb-border);
	padding-top:14px;
	font-size:20px;
	font-weight:900;
	color:var(--bb-primary);
}
.woocommerce-cart .cart_totals{
	border:0;
	border-radius:0;
	background:transparent;
	padding:0;
}
.woocommerce-cart .cart_totals table{margin:0;}
.woocommerce-cart .cart_totals table th{
	color:var(--bb-text-2);
	font-weight:800;
	text-align:start;
}
.woocommerce-cart .cart_totals table td{font-weight:900;}
.woocommerce-cart .cart_totals h2{margin:0 0 10px 0;font-size:18px;font-weight:900;}
.woocommerce-cart .wc-proceed-to-checkout{margin-top:12px;}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
	border:1px solid var(--bb-primary);
	background:var(--bb-primary);
	color:#ffffff;
	font-weight:900;
	border-radius:var(--bb-radius-btn);
	display:flex;
	align-items:center;
	justify-content:center;
}
@media (hover:hover){
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);transition:border-color 180ms,background-color 180ms;}
}

.woocommerce-checkout form.checkout{
	display:flex;
	flex-direction:column;
	gap:14px;
}
@media (min-width:1024px){
	.woocommerce-checkout form.checkout{
		display:grid;
		grid-template-columns:1fr .9fr;
		gap:20px;
		align-items:start;
	}
	.woocommerce-checkout form.checkout #customer_details{grid-column:1;}
	.woocommerce-checkout form.checkout #order_review_heading{grid-column:2;}
	.woocommerce-checkout form.checkout #order_review{grid-column:2;}
}

.woocommerce-checkout .col2-set{display:flex;flex-direction:column;gap:14px;}
@media (min-width:1024px){
	.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{float:none;width:auto;}

.woocommerce-checkout #order_review_heading{margin:0;font-size:18px;font-weight:900;}
.woocommerce-checkout #order_review{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	padding:12px;
}
.woocommerce-checkout #order_review table{margin:0;}

.woocommerce-checkout #payment{
	margin-top:12px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	padding:12px;
}
.woocommerce-checkout #payment ul.payment_methods{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:10px;
}
.woocommerce-checkout #payment ul.payment_methods li{
	border:1px solid var(--bb-border);
	border-radius:14px;
	background:var(--bb-surface);
	padding:10px 12px;
}
.woocommerce-checkout #payment .payment_box{
	margin:10px 0 0 0;
	border:1px solid var(--bb-border);
	border-radius:14px;
	background:var(--bb-bg-2);
	padding:10px 12px;
}

.woocommerce-checkout #place_order{
	width:100%;
	min-height:52px;
	border:1px solid var(--bb-accent);
	background:var(--bb-accent);
	color:#ffffff;
	font-weight:900;
	border-radius:var(--bb-radius);
}
@media (hover:hover){
	.woocommerce-checkout #place_order:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);transition:border-color 180ms,background-color 180ms;}
}

/* Single product */
.single-product div.product{
	display:grid;
	gap:32px;
}
@media (min-width:1024px){
	.single-product div.product{
		grid-template-columns:1fr 1fr;
		gap:48px;
		align-items:start;
	}
}

.single-product .woocommerce-product-gallery,
.single-product .summary{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	box-shadow:var(--bb-shadow-md);
	padding:16px;
}
@media (min-width:1024px){
	.single-product .woocommerce-product-gallery,
	.single-product .summary{padding:32px;}
}

.single-product .woocommerce-product-gallery{padding:16px;}
.single-product .woocommerce-product-gallery{position:relative;}
.single-product .woocommerce-product-gallery{opacity:1 !important;visibility:visible !important;}
.single-product .woocommerce-product-gallery .flex-viewport{height:auto !important;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{height:auto !important;}
.single-product .woocommerce-product-gallery .flex-viewport{overflow:hidden;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{position:relative !important;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image{width:100%;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image a{display:block;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{display:block;}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper{margin:0;}

.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__main-img{
	width:100%;
	aspect-ratio:1;
	object-fit:cover;
	border-radius:var(--bb-radius-card);
	margin:0 0 16px 0;
}
.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumbs{
	display:flex;
	gap:16px;
	justify-content:center;
	flex-wrap:wrap;
}
.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumb{
	border:0;
	background:transparent;
	padding:0;
	cursor:pointer;
}
.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumb-img{
	width:80px;
	height:80px;
	object-fit:cover;
	border-radius:12px;
	border:2px solid transparent;
	opacity:.85;
	transition:var(--bb-transition);
	display:block;
}
.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumb.is-active .bb-simple-gallery__thumb-img,
.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumb-img.flex-active{
	border-color:var(--bb-primary);
	opacity:1;
}
@media (hover:hover){
	.single-product .woocommerce-product-gallery--bb-simple .bb-simple-gallery__thumb-img:hover{transform:scale(1.05);}
}

.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img{
	opacity:1 !important;
	visibility:visible !important;
}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child{
	display:block !important;
	position:relative !important;
}
.single-product .woocommerce-product-gallery .flex-viewport{min-height:260px;}
@media (min-width:768px){
	.single-product .woocommerce-product-gallery .flex-viewport{min-height:360px;}
}

.single-product .woocommerce-product-gallery__trigger{
	position:absolute;
	top:22px;
	right:22px;
	width:44px;
	height:44px;
	border-radius:999px;
	border:1px solid var(--bb-border);
	background:rgba(255,255,255,.12);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
	z-index:5;
	font-size:0;
	color:var(--bb-text);
}
.single-product .woocommerce-product-gallery__trigger::before{
	content:"\f002";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	font-size:18px;
}
@media (hover:hover){
	.single-product .woocommerce-product-gallery__trigger:hover{
		background:var(--bb-primary);
		border-color:var(--bb-primary);
		color:#ffffff;
		transition:border-color 180ms,background-color 180ms,color 180ms;
	}
}
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper img{
	width:100%;
	aspect-ratio:1;
	object-fit:cover;
	border-radius:var(--bb-radius-card);
}

.single-product .woocommerce-product-gallery .flex-control-thumbs{
	justify-content:center;
	gap:16px;
	padding:16px 8px 8px;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{width:80px;}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{
	width:80px;
	height:80px;
	object-fit:cover;
	border-radius:12px;
	border:2px solid transparent;
	transition:var(--bb-transition);
	opacity:.85;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active{
	border-color:var(--bb-primary);
	opacity:1;
}
@media (hover:hover){
	.single-product .woocommerce-product-gallery .flex-control-thumbs img:hover{transform:scale(1.05);}
}

.single-product .summary .product_title{font-size:28px;margin:0 0 12px 0;}
.single-product .summary p.price,
.single-product .summary span.price{
	font-size:28px;
	font-weight:900;
	color:var(--bb-primary);
	margin:0 0 12px 0;
}
.single-product .summary p.price del,
.single-product .summary span.price del{color:var(--bb-text-2);font-weight:700;font-size:16px;}
.single-product .summary p.price ins,
.single-product .summary span.price ins{text-decoration:none;color:var(--bb-primary);}

.single-product form.cart{margin-top:18px;}
.single-product form.cart:not(.variations_form){
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:16px;
}
.single-product form.variations_form{display:block;}
.single-product form.variations_form .woocommerce-variation-add-to-cart{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:16px;
}
.single-product form.cart .quantity{display:flex;align-items:center;gap:10px;margin:0;}
.single-product form.cart .quantity .qty{
	width:60px;
	min-height:36px;
	text-align:center;
	background:transparent;
	border:1px solid var(--bb-border);
	border-radius:8px;
	padding:8px 10px;
}
.single-product .bb-qty-btn{width:36px;height:36px;border-radius:8px;}

.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .button{
	width:auto;
	min-height:52px;
	padding:14px 28px;
	border-radius:999px;
	background:var(--bb-primary);
	border-color:var(--bb-primary);
	color:#ffffff;
	font-weight:900;
	flex:1 1 220px;
}
.single-product form.cart .single_add_to_cart_button::before{
	content:"\f07a";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	display:inline-block;
	margin-inline-start:8px;
}
@media (hover:hover){
	.single-product form.cart .single_add_to_cart_button:hover,
	.single-product form.cart .button:hover{
		background:var(--bb-primary-dark);
		border-color:var(--bb-primary-dark);
		transform:translateY(-2px);
		box-shadow:0 4px 12px rgba(227,63,63,0.3);
		transition:border-color 180ms,background-color 180ms,transform 180ms,box-shadow 180ms;
	}
}

.single-product .summary .woocommerce-product-rating{
	display:flex;
	align-items:center;
	gap:10px;
	margin:10px 0 14px 0;
	color:var(--bb-accent);
}
.single-product .summary .woocommerce-product-rating .star-rating{
	margin:0;
	float:none;
	color:var(--bb-accent);
}
.single-product .summary .woocommerce-product-rating .woocommerce-review-link{
	color:var(--bb-text-2);
	font-weight:800;
	font-size:13px;
	text-decoration:none;
}

.single-product .summary .stock{
	margin:0 0 10px 0;
	font-weight:900;
	color:#22c55e;
}

.single-product .summary .woocommerce-product-details__short-description{
	margin:14px 0;
	color:var(--bb-text-2);
	font-weight:700;
	line-height:1.8;
}

.single-product .summary .product_meta{
	border-top:1px solid var(--bb-border);
	padding-top:12px;
	margin-top:12px;
	font-size:13px;
	color:var(--bb-text-2);
	font-weight:800;
}
.single-product .summary .product_meta span{display:block;margin-top:6px;}
.single-product .summary .product_meta span:first-child{margin-top:0;}
.single-product .summary .product_meta span span,
.single-product .summary .product_meta a{color:var(--bb-text);font-weight:900;}

.single-product .woocommerce-tabs{
	grid-column:1 / -1;
	margin-top:0;
}
.single-product .woocommerce-tabs ul.tabs{
	margin:0 0 32px;
	padding:0 0 0 0;
	display:flex;
	flex-wrap:wrap;
	gap:16px;
	border:0;
	border-bottom:1px solid var(--bb-border);
}
.single-product .woocommerce-tabs ul.tabs li{
	border:0;
	background:transparent;
	margin:0;
	padding:0;
}
.single-product .woocommerce-tabs ul.tabs li a{
	display:inline-flex;
	align-items:center;
	min-height:44px;
	padding:12px 18px;
	border-radius:0;
	background:transparent;
	border:0;
	color:var(--bb-text-2);
	text-decoration:none;
	font-weight:900;
	position:relative;
}
.single-product .woocommerce-tabs ul.tabs li.active a{
	color:var(--bb-primary);
}
.single-product .woocommerce-tabs ul.tabs li.active a::after{
	content:"";
	position:absolute;
	bottom:-1px;
	right:0;
	width:100%;
	height:2px;
	background:var(--bb-primary);
}

body.single-product[data-bb-tabs-ready="1"] .woocommerce-tabs .panel{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	padding:32px;
	margin:0;
	display:none;
}
body.single-product[data-bb-tabs-ready="1"] .woocommerce-tabs .panel.bb-tab-active{display:block;}

.single-product section.related,
.single-product section.upsells{
	grid-column:1 / -1;
	margin-top:48px;
}
.single-product section.related > h2,
.single-product section.upsells > h2{
	margin:0 0 24px;
	font-size:24px;
	font-weight:900;
}

@media (hover:hover){
	body.single-product .bb-product-card:hover{transform:translateY(-6px);}
}

body.single-product .woocommerce ul.products:not(.bb-scroll-row){
	grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
	gap:32px;
}

.woocommerce-account .woocommerce{display:flex;flex-direction:column;gap:14px;}
@media (min-width:1024px){
	.woocommerce-account .woocommerce{flex-direction:row;align-items:flex-start;gap:20px;}
	.woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 260px;}
	.woocommerce-account .woocommerce-MyAccount-content{flex:1;}
}

.woocommerce-account .woocommerce-MyAccount-content form{
	display:flex;
	flex-direction:column;
	gap:12px;
}
.woocommerce-account .woocommerce-MyAccount-content fieldset{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:12px;
	margin:0;
}
.woocommerce-account .woocommerce-MyAccount-content legend{
	padding:0 8px;
	color:var(--bb-text-2);
	font-weight:900;
	font-size:13px;
}

.woocommerce-account .woocommerce-MyAccount-content table.shop_table{
	margin:0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:10px;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	min-height:44px;
	padding:10px 12px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	font-weight:800;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{border-color:var(--bb-accent);background:var(--bb-surface);}
@media (hover:hover){
	.woocommerce-account .woocommerce-MyAccount-navigation a:hover{border-color:var(--bb-primary-dark);transition:border-color 180ms;}
}
.woocommerce-account .woocommerce-MyAccount-content > *:first-child{margin-top:0;}

.woocommerce-account .woocommerce .button{
	min-height:44px;
	padding:12px 14px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	color:var(--bb-text);
	font-weight:900;
}
.woocommerce-account .woocommerce .button:disabled{opacity:.55;cursor:not-allowed;}
@media (hover:hover){
	.woocommerce-account .woocommerce .button:hover{border-color:var(--bb-primary-dark);transition:border-color 180ms;}
}

body.woocommerce-account:not(.logged-in) .woocommerce{
	display:block;
}
body.woocommerce-account:not(.logged-in) .woocommerce > *{
	max-width:520px;
	margin-left:auto;
	margin-right:auto;
}
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns{
	display:flex;
	flex-direction:column;
	gap:14px;
}
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2{
	float:none;
	width:100%;
}
body.woocommerce-account:not(.logged-in) .woocommerce form.login,
body.woocommerce-account:not(.logged-in) .woocommerce form.register{
	width:100%;
	margin:0;
}

.bb-bottom-nav{
	position:fixed;
	bottom:0;
	right:0;
	left:0;
	z-index:75;
	background:var(--bb-surface);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border-top:1px solid var(--bb-border);
	height:var(--bb-nav-h);
	display:flex;
	color:var(--bb-text);
}
@media (min-width:1024px){
	.bb-bottom-nav{display:none;}
}
.bb-bottom-nav__item{
	flex:1;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:6px;
	min-height:44px;
	color:var(--bb-text-2);
	font-size:12px;
	font-weight:800;
}
.bb-bottom-nav__item i{font-size:18px;color:var(--bb-text);}
.bb-bottom-nav__item.is-active{color:var(--bb-text);}
.bb-bottom-nav__item.is-active i{color:var(--bb-accent);}

.bb-whatsapp{
	position:fixed;
	left:16px;
	bottom:calc(var(--bb-nav-h) + 16px);
	width:68px;
	height:68px;
	border-radius:999px;
	background:#25D366;
	color:#ffffff;
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:90;
	border:1px solid var(--bb-border);
}
.bb-whatsapp i{font-size:34px;line-height:1;}
body.single-product .bb-whatsapp{bottom:calc(var(--bb-nav-h) + var(--bb-atc-h) + 16px);}
@media (hover:hover){
	.bb-whatsapp:hover{filter:brightness(.95);transition:filter 180ms;}
}

.bb-sticky-atc{
	position:fixed;
	left:0;
	right:0;
	bottom:var(--bb-nav-h);
	height:var(--bb-atc-h);
	background:var(--bb-surface);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border-top:1px solid var(--bb-border);
	z-index:80;
	display:flex;
	align-items:center;
	color:var(--bb-text);
}
@media (min-width:1024px){
	.bb-sticky-atc{display:none;}
}
.bb-sticky-atc__inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	width:100%;
}
.bb-sticky-atc__price{font-weight:900;font-size:16px;white-space:nowrap;flex:0 0 auto;}
.bb-sticky-atc__btn{flex:1;min-height:52px;}

.bb-content{
	background:var(--bb-bg);
}

.bb-page-card{padding:14px;}

.bb-contact-grid{
	display:grid;
	grid-template-columns:1fr;
	gap:14px;
	margin-top:14px;
}
@media (min-width:1024px){
	.bb-contact-grid{grid-template-columns:1fr 1fr;gap:20px;}
}

.bb-contact-card{
	background:var(--bb-card);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	padding:16px;
	box-shadow:var(--bb-shadow-sm);
}
@media (min-width:1024px){
	.bb-contact-card{padding:20px;}
}

.bb-contact-title{
	margin:0 0 14px 0;
	font-size:20px;
	font-weight:900;
	position:relative;
	display:inline-block;
}
.bb-contact-title::after{
	content:"";
	position:absolute;
	bottom:-8px;
	right:0;
	width:44px;
	height:3px;
	background:var(--bb-primary);
	border-radius:4px;
}

.bb-contact-form{display:flex;flex-direction:column;gap:12px;}
.bb-contact-field{display:flex;flex-direction:column;gap:8px;}
.bb-contact-field > span{font-weight:900;color:var(--bb-text);font-size:13px;}
.bb-contact-field input,
.bb-contact-field textarea,
.bb-contact-field select{
	width:100%;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	min-height:44px;
	padding:10px 12px;
}
.bb-contact-field textarea{min-height:120px;resize:vertical;}
.bb-contact-field input:focus,
.bb-contact-field textarea:focus,
.bb-contact-field select:focus{outline:none;}

.bb-contact-success,
.bb-contact-error{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	padding:12px;
	font-weight:900;
	margin:0 0 14px 0;
}
.bb-contact-success{background:rgba(34,197,94,.12);}
.bb-contact-error{background:rgba(227,63,63,.12);}

.bb-contact-info{display:flex;flex-direction:column;gap:12px;margin-top:6px;}
.bb-contact-info__item{border:1px solid var(--bb-border);border-radius:14px;background:var(--bb-bg-2);padding:12px;}
.bb-contact-info__label{font-weight:900;color:var(--bb-text-2);font-size:13px;margin-bottom:6px;}
.bb-contact-info__value{font-weight:900;color:var(--bb-text);}

.bb-footer{
	border-top:1px solid var(--bb-border);
	background:var(--bb-footer-bg);
	backdrop-filter:blur(8px);
	-webkit-backdrop-filter:blur(8px);
	padding:48px 0 24px;
	color:var(--bb-footer-text);
}
.bb-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;margin-bottom:32px;}
.bb-footer__title{color:#ffffff;margin:0 0 16px 0;font-size:1.2rem;font-weight:800;}
.bb-footer__list{list-style:none;margin:0;padding:0;}
.bb-footer__list li{margin-bottom:8px;}
.bb-footer__list a{color:var(--bb-footer-text);transition:var(--bb-transition);}
@media (hover:hover){
	.bb-footer__list a:hover{color:var(--bb-primary);padding-right:5px;}
}
.bb-footer__contact-link{
	color:var(--bb-footer-text);
	text-decoration:none;
	transition:var(--bb-transition);
}
.bb-footer__contact-link:hover{
	color:var(--bb-primary);
}
.bb-footer__contact-link[dir="ltr"]{
	direction:ltr;
	text-align:left;
	display:inline-block;
}
.bb-footer__social{display:flex;gap:16px;margin-top:16px;}
.bb-footer__social a{background:rgba(255,255,255,.10);width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:var(--bb-transition);color:var(--bb-footer-text);}
@media (hover:hover){
	.bb-footer__social a:hover{background:var(--bb-primary);color:#ffffff;}
}
.bb-footer__copy{text-align:center;padding-top:32px;border-top:1px solid rgba(255,255,255,.10);font-size:.8rem;}

.woocommerce-message,
.woocommerce-error,
.woocommerce-info{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	padding:14px;
	list-style:none;
	margin:0 0 12px 0;
}

.woocommerce-notices-wrapper{margin:0 0 12px 0;}
.woocommerce-notices-wrapper:empty{display:none;}

.bb-woo-toolbar .woocommerce-result-count + .woocommerce-ordering{margin-top:0;}

.woocommerce .woocommerce-result-count{margin:0;color:var(--bb-text-2);font-weight:800;font-size:13px;}
.woocommerce .woocommerce-ordering{margin:0;}
.woocommerce .woocommerce-ordering select{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	min-height:44px;
	padding:10px 12px;
}
.woocommerce .woocommerce-ordering select:focus{outline:none;}
.woocommerce .woocommerce-ordering select:focus-visible{outline:none;}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{float:none;}
.woocommerce .woocommerce-ordering,
.woocommerce .woocommerce-result-count{display:flex;align-items:center;justify-content:flex-start;}
.woocommerce .woocommerce-ordering{justify-content:flex-end;}
.woocommerce .woocommerce-result-count + .woocommerce-ordering{margin-top:10px;}
@media (min-width:768px){
	.woocommerce .woocommerce-result-count + .woocommerce-ordering{margin-top:0;}
	.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering{width:auto;}
	.woocommerce .woocommerce-ordering{margin-right:auto;}
}

.woocommerce nav.woocommerce-pagination{margin-top:14px;}
.woocommerce nav.woocommerce-pagination ul{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	gap:10px;
	justify-content:center;
}
.woocommerce nav.woocommerce-pagination ul li{margin:0;padding:0;border:0;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:44px;
	min-height:44px;
	padding:0 12px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	color:var(--bb-text);
	font-weight:900;
}
.woocommerce nav.woocommerce-pagination ul li span.current{border-color:var(--bb-accent);}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	min-height:44px;
	padding:12px 14px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-surface);
	color:var(--bb-text);
	font-weight:900;
	text-decoration:none;
}
.woocommerce a.button:focus,
.woocommerce button.button:focus,
.woocommerce input.button:focus,
.woocommerce #respond input#submit:focus{outline:none;}
.woocommerce a.button:focus-visible,
.woocommerce button.button:focus-visible,
.woocommerce input.button:focus-visible,
.woocommerce #respond input#submit:focus-visible{outline:none;}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt{
	border-color:var(--bb-accent);
	background:var(--bb-accent);
	color:#ffffff;
}

.woocommerce .woocommerce-products-header{margin:0 0 14px 0;}
.woocommerce .woocommerce-products-header__title,
.woocommerce .page-title{margin:0 0 10px 0;font-size:20px;font-weight:900;color:var(--bb-text);}

.woocommerce-cart .cart-collaterals{align-items:stretch;}
@media (min-width:1024px){
	.woocommerce-cart .cart-collaterals{display:block;}
	.woocommerce-cart .cart-collaterals .cart_totals{position:static;top:auto;}
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	background:var(--bb-card);
	box-shadow:var(--bb-shadow-sm);
	padding:12px;
}
@media (min-width:1024px){
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content{padding:16px;}
	.woocommerce-account .woocommerce-MyAccount-navigation{position:sticky;top:100px;}
}

.bb-account-user{
	display:flex;
	align-items:center;
	gap:12px;
	padding:12px;
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius-card);
	background:var(--bb-bg-2);
	margin:0 0 12px 0;
}
.bb-account-user__avatar-wrap{
	width:52px;
	height:52px;
	border-radius:999px;
	overflow:hidden;
	border:1px solid var(--bb-border);
	background:var(--bb-surface);
	flex:0 0 auto;
}
.bb-account-user__avatar{
	width:100%;
	height:100%;
	object-fit:cover;
}
.bb-account-user__name{font-weight:900;color:var(--bb-text);}
.bb-account-user__email{font-weight:800;color:var(--bb-text-2);font-size:12px;}

.woocommerce-account .woocommerce-MyAccount-navigation ul{
	gap:8px;
}
.woocommerce-account .woocommerce-MyAccount-navigation a{
	min-height:48px;
	border-radius:14px;
	background:var(--bb-bg-2);
	border:1px solid var(--bb-border);
	padding:10px 12px;
	justify-content:flex-start;
}
.woocommerce-account .woocommerce-MyAccount-navigation a::before{
	content:"\f0ca";
	font-family:"Font Awesome 6 Free";
	font-weight:900;
	width:20px;
	display:inline-flex;
	justify-content:center;
	color:var(--bb-text);
}
.woocommerce-account .woocommerce-MyAccount-navigation a::after{content:none;}
.woocommerce-account .woocommerce-MyAccount-navigation a{gap:10px;}
.woocommerce-account .woocommerce-MyAccount-navigation-link--dashboard a::before{content:"\f3fd";}
.woocommerce-account .woocommerce-MyAccount-navigation-link--orders a::before{content:"\f07a";}
.woocommerce-account .woocommerce-MyAccount-navigation-link--downloads a::before{content:"\f019";}
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-address a::before{content:"\f3c5";}
.woocommerce-account .woocommerce-MyAccount-navigation-link--edit-account a::before{content:"\f4ff";}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a::before{content:"\f2f5";}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
	background:var(--bb-primary);
	border-color:var(--bb-primary);
	color:#ffffff;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::before{color:#ffffff;}
@media (hover:hover){
	.woocommerce-account .woocommerce-MyAccount-navigation a:hover{background:var(--bb-surface);border-color:var(--bb-primary-dark);}
	.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a:hover{background:var(--bb-primary-dark);border-color:var(--bb-primary-dark);}
}

body.woocommerce-account:not(.logged-in) .woocommerce form.login,
body.woocommerce-account:not(.logged-in) .woocommerce form.register{
	background:var(--bb-card);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
	border-radius:var(--bb-radius-card);
	box-shadow:var(--bb-shadow-md);
	border:1px solid var(--bb-border);
	padding:18px;
}
@media (min-width:768px){
	body.woocommerce-account:not(.logged-in) .woocommerce form.login,
	body.woocommerce-account:not(.logged-in) .woocommerce form.register{padding:22px;}
}

body.woocommerce-account:not(.logged-in) .bb-page-card{
	min-height:70vh;
	display:flex;
	align-items:center;
	justify-content:center;
}
body.woocommerce-account:not(.logged-in) .bb-page-card > .woocommerce{
	width:100%;
}
body.woocommerce-account:not(.logged-in) .woocommerce > *{
	max-width:520px;
	margin-left:auto;
	margin-right:auto;
}

body.woocommerce-account:not(.logged-in) .woocommerce h2{
	text-align:center;
	font-size:28px;
	font-weight:900;
	margin:0 0 8px 0;
}
body.woocommerce-account:not(.logged-in) .woocommerce p{
	color:var(--bb-text-2);
	font-weight:700;
}

body.woocommerce-account:not(.logged-in) .woocommerce form.login .form-row,
body.woocommerce-account:not(.logged-in) .woocommerce form.register .form-row{
	margin:0 0 12px 0;
}
body.woocommerce-account:not(.logged-in) .woocommerce form.login label,
body.woocommerce-account:not(.logged-in) .woocommerce form.register label{
	font-weight:900;
	color:var(--bb-text);
	font-size:13px;
	margin:0 0 8px 0;
}
body.woocommerce-account:not(.logged-in) .woocommerce form.login input.input-text,
body.woocommerce-account:not(.logged-in) .woocommerce form.register input.input-text,
body.woocommerce-account:not(.logged-in) .woocommerce form.register input[type="email"],
body.woocommerce-account:not(.logged-in) .woocommerce form.register input[type="password"]{
	width:100%;
	min-height:48px;
	border:1px solid var(--bb-border);
	border-radius:14px;
	background:var(--bb-bg-2);
	color:var(--bb-text);
	padding:12px 12px;
}

body.woocommerce-account:not(.logged-in) .woocommerce form.login .woocommerce-form-login__rememberme{
	display:flex;
	align-items:center;
	gap:10px;
	font-weight:800;
	color:var(--bb-text-2);
}
body.woocommerce-account:not(.logged-in) .woocommerce form.login .woocommerce-LostPassword{
	margin:10px 0 0 0;
}
body.woocommerce-account:not(.logged-in) .woocommerce form.login .woocommerce-LostPassword a{
	color:var(--bb-primary);
	font-weight:900;
	text-decoration:none;
}

body.woocommerce-account:not(.logged-in) .woocommerce form.login button.button,
body.woocommerce-account:not(.logged-in) .woocommerce form.register button.button{
	width:100%;
	min-height:52px;
	border-radius:999px;
	background:var(--bb-primary);
	border-color:var(--bb-primary);
	color:#ffffff;
}
@media (hover:hover){
	body.woocommerce-account:not(.logged-in) .woocommerce form.login button.button:hover,
	body.woocommerce-account:not(.logged-in) .woocommerce form.register button.button:hover{
		background:var(--bb-primary-dark);
		border-color:var(--bb-primary-dark);
		transition:border-color 180ms,background-color 180ms;
	}
}

body.woocommerce-account:not(.logged-in) .woocommerce #customer_login{
	display:flex;
	flex-direction:column;
	gap:14px;
}

.woocommerce-account table.my_account_orders{width:100%;border-collapse:separate;border-spacing:0;}
.woocommerce-account table.my_account_orders th,
.woocommerce-account table.my_account_orders td{padding:12px 10px;border-bottom:1px solid var(--bb-border);}
.woocommerce-account table.my_account_orders tr:last-child > *{border-bottom:0;}

.woocommerce-account .woocommerce-Addresses{display:flex;flex-direction:column;gap:14px;}
@media (min-width:1024px){
	.woocommerce-account .woocommerce-Addresses{flex-direction:row;}
	.woocommerce-account .woocommerce-Addresses .woocommerce-Address{flex:1;}
}
.woocommerce-account .woocommerce-Address{
	border:1px solid var(--bb-border);
	border-radius:var(--bb-radius);
	background:var(--bb-bg-2);
	padding:12px;
}
.woocommerce-account .woocommerce-Address-title h3{margin:0;font-size:16px;font-weight:900;}
.woocommerce-account .woocommerce-Address address{margin:10px 0 0 0;color:var(--bb-text);font-style:normal;}

/* =================================================================
   MOBILE ENHANCEMENTS — Professional Grade
   All rules here override previously defined styles via cascade.
   Organized from critical fixes → layout → component polish.
   ================================================================= */

/* ── 1. iOS: Disable fixed background-attachment (broken on iOS Safari) ── */
@media (max-width:1023px){
	.bb-hero--home{
		background-attachment:scroll;
	}
}

/* ── 2. Safe-area insets for iPhone notch / home indicator ── */
@supports (padding-bottom:env(safe-area-inset-bottom)){
	@media (max-width:1023px){
		.bb-bottom-nav{
			padding-bottom:env(safe-area-inset-bottom);
			height:calc(var(--bb-nav-h) + env(safe-area-inset-bottom));
		}
		body{
			padding-bottom:calc(var(--bb-nav-h) + env(safe-area-inset-bottom));
		}
		body.single-product{
			padding-bottom:calc(var(--bb-nav-h) + var(--bb-atc-h) + env(safe-area-inset-bottom));
		}
		.bb-sticky-atc{
			bottom:calc(var(--bb-nav-h) + env(safe-area-inset-bottom));
			padding-bottom:env(safe-area-inset-bottom);
			height:calc(var(--bb-atc-h) + env(safe-area-inset-bottom));
		}
		.bb-whatsapp{
			bottom:calc(var(--bb-nav-h) + 16px + env(safe-area-inset-bottom));
		}
		body.single-product .bb-whatsapp{
			bottom:calc(var(--bb-nav-h) + var(--bb-atc-h) + 16px + env(safe-area-inset-bottom));
		}
	}
}

/* ── 3. Header: single-row layout on mobile (logo | icons) ── */
/* The bottom nav already handles navigation on mobile — top nav is redundant */
@media (max-width:1023px){
	.bb-header__grid{
		flex-direction:row;
		flex-wrap:nowrap;
		align-items:center;
		justify-content:space-between;
		padding:0;
		min-height:var(--bb-nav-h);
		gap:8px;
	}
	.bb-header__logo{flex:0 0 auto;}
	.bb-nav{display:none;}
	.bb-header__icons{
		flex:0 0 auto;
		justify-content:flex-end;
		gap:8px;
	}
	.bb-header__search{display:none;}
	.bb-logo,
	.bb-logo__img,
	.bb-logo__img--light,
	.bb-logo__img--dark{
		height:46px;
		max-width:120px;
	}
	.bb-header__icons a.bb-icon-btn,
	.bb-theme-toggle{
		width:42px;
		height:42px;
		min-width:42px;
		min-height:42px;
	}
}

/* ── 4. Hero section: height, panel sizing, bg position ── */
@media (max-width:767px){
	.bb-hero--home{
		min-height:65vh;
		background-position:center center;
	}
	.bb-hero--home .bb-hero__wrap{
		justify-content:center;
	}
	.bb-hero__panel{
		padding:22px 18px;
		border-radius:22px;
		gap:14px;
		width:100%;
	}
	.bb-hero__title{
		font-size:clamp(1.6rem,7vw,2.3rem);
		text-align:center;
	}
	.bb-hero__subtitle{
		font-size:.95rem;
		text-align:center;
	}
	.bb-hero__badge{
		align-self:center;
		font-size:12px;
		padding:5px 12px;
	}
	.bb-search--hero .bb-search__row{
		max-width:100%;
	}
	.bb-search--hero .bb-search__input{
		padding:12px 16px;
	}
	.bb-search--hero .bb-search__btn{
		min-height:44px;
		padding:0 16px;
	}
}
@media (max-width:480px){
	.bb-hero--home{min-height:55vh;}
	.bb-hero__panel{
		padding:18px 14px;
		border-radius:18px;
		gap:12px;
	}
}

/* ── 5. Section padding: 64px → 40px → 32px on mobile ── */
@media (max-width:767px){
	.bb-section,
	.bb-home-cats,
	.bb-home-featured,
	.bb-home-cat-products,
	.bb-home-features,
	.bb-home-testimonials{
		padding:40px 0;
	}
	.bb-section__title{font-size:1.45rem;}
	.bb-section__title::after{width:44px;height:3px;}
	.bb-section__head{margin-bottom:22px;}
}
@media (max-width:480px){
	.bb-section,
	.bb-home-cats,
	.bb-home-featured,
	.bb-home-cat-products,
	.bb-home-features,
	.bb-home-testimonials{
		padding:32px 0;
	}
	.bb-container{padding:0 16px;}
	.bb-section__head{
		flex-direction:column;
		align-items:flex-start;
		gap:6px;
		margin-bottom:16px;
	}
	.bb-section__link{
		font-size:13px;
		min-height:36px;
	}
}

/* ── 6. Products grid: explicit 2 columns on mobile ── */
@media (max-width:767px){
	.bb-products-grid{
		grid-template-columns:repeat(2,1fr);
		gap:10px;
		margin-bottom:24px;
	}
	.woocommerce ul.products:not(.bb-scroll-row){
		grid-template-columns:repeat(2,1fr);
		gap:10px;
	}
	body.woocommerce-shop .woocommerce ul.products:not(.bb-scroll-row),
	body.tax-product_cat .woocommerce ul.products:not(.bb-scroll-row),
	body.tax-product_tag .woocommerce ul.products:not(.bb-scroll-row){
		grid-template-columns:repeat(2,1fr);
		gap:10px;
	}
	body.single-product .woocommerce ul.products:not(.bb-scroll-row){
		grid-template-columns:repeat(2,1fr);
		gap:10px;
	}
	.bb-related-grid{
		grid-template-columns:repeat(2,1fr);
		gap:10px;
	}
}
@media (max-width:340px){
	.bb-products-grid,
	.woocommerce ul.products:not(.bb-scroll-row){
		grid-template-columns:1fr;
	}
}

/* ── 7. Product card: optimized for 2-column mobile grid ── */
@media (max-width:767px){
	.bb-product-card{border-radius:14px;}
	.bb-product-card__info{
		padding:8px 8px 6px;
		gap:3px;
	}
	.bb-product-card__title{
		font-size:12.5px;
		min-height:auto;
		-webkit-line-clamp:2;
		line-clamp:2;
		line-height:1.35;
	}
	.bb-product-card__cat{
		font-size:10px;
		padding:3px 7px;
	}
	.bb-price--current{font-size:14px;}
	.bb-price--old{font-size:11px;}
	.bb-product-card__excerpt{display:none;}
	.bb-product-card__actions{
		padding:6px 8px 8px;
		gap:6px;
	}
	.bb-product-card__actions .bb-btn{
		min-height:34px;
		font-size:12px;
		padding:7px 8px;
		border-radius:10px;
		gap:4px;
	}
	.bb-product-card__actions .bb-btn i{font-size:11px;}
	.bb-sale-badge,
	.bb-featured-badge{
		font-size:10px;
		padding:3px 7px;
		border-radius:10px;
	}
}

/* ── 8. Category grid: 3 columns on mobile ── */
@media (max-width:767px){
	.bb-cats-grid{
		grid-template-columns:repeat(3,1fr);
		gap:10px;
	}
	.bb-cat-card{
		padding:16px 8px;
		gap:10px;
		border-radius:14px;
	}
	.bb-cat-card__icon{font-size:2rem;}
	.bb-cat-card__name{font-size:.82rem;}
}
@media (max-width:480px){
	.bb-cats-grid{
		grid-template-columns:repeat(3,1fr);
		gap:8px;
	}
	.bb-cat-card{padding:12px 6px;gap:8px;}
	.bb-cat-card__icon{font-size:1.65rem;}
	.bb-cat-card__name{font-size:.73rem;}
}

/* ── 9. Horizontal scroll rows: hide scrollbar on mobile ── */
@media (max-width:1023px){
	.bb-scroll-row{
		scrollbar-width:none;
		-ms-overflow-style:none;
		scroll-behavior:smooth;
	}
	.bb-scroll-row::-webkit-scrollbar{display:none;}
	.bb-products-scroll.bb-scroll-row > li{width:170px;}
	.bb-scroll-row .bb-cat-card{width:120px;}
}

/* ── 10. Features grid: 2 columns on mobile ── */
@media (max-width:767px){
	.bb-features-grid{
		grid-template-columns:repeat(2,1fr);
		gap:10px;
		margin-top:18px;
	}
	.bb-feature-card{
		padding:20px 12px;
		border-radius:14px;
	}
	.bb-feature-card__icon{font-size:1.9rem;margin-bottom:10px;}
	.bb-feature-card__title{font-size:.88rem;}
	.bb-feature-card__desc{font-size:.8rem;}
}

/* ── 11. Testimonials: single column on mobile ── */
@media (max-width:767px){
	.bb-testimonials-grid{
		grid-template-columns:1fr;
		gap:14px;
		margin-top:18px;
	}
	.bb-testimonial-card{
		padding:20px 16px;
		border-radius:18px;
	}
}

/* ── 12. iOS input zoom fix: minimum font-size 16px on all form inputs ── */
/* iOS Safari auto-zooms when any focused input has font-size < 16px     */
@media (max-width:767px){
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="password"],
	input[type="search"],
	input[type="number"],
	select,
	textarea,
	.bb-search__input,
	.bb-quantity-input,
	.bb-form-group input,
	.bb-form-group textarea,
	.bb-contact-field input,
	.bb-contact-field textarea,
	.bb-contact-field select,
	.woocommerce-account .woocommerce-Input,
	.woocommerce-account .input-text,
	.woocommerce-account select,
	.woocommerce-account textarea{
		font-size:16px !important;
	}
}

/* ── 13. Footer: responsive columns ── */
@media (max-width:767px){
	.bb-footer{padding:36px 0 20px;}
	.bb-footer__cols{
		grid-template-columns:repeat(2,1fr);
		gap:24px 16px;
		margin-bottom:22px;
	}
	.bb-footer__title{font-size:1rem;margin-bottom:12px;}
	.bb-footer__list li{margin-bottom:6px;font-size:.88rem;}
	.bb-footer__copy{padding-top:20px;font-size:.75rem;}
	.bb-footer__social{gap:10px;margin-top:12px;}
	.bb-footer__social a{width:32px;height:32px;}
}
@media (max-width:480px){
	.bb-footer__cols{grid-template-columns:1fr;gap:20px;}
}

/* ── 14. Bottom nav: active top-line indicator + icon scale ── */
@media (max-width:1023px){
	.bb-bottom-nav__item{
		position:relative;
		padding:0 4px;
		transition:color .2s ease;
	}
	.bb-bottom-nav__item.is-active::before{
		content:"";
		position:absolute;
		top:0;
		left:50%;
		transform:translateX(-50%);
		width:24px;
		height:3px;
		background:var(--bb-accent);
		border-radius:0 0 4px 4px;
	}
	.bb-bottom-nav__item i{
		transition:transform .22s cubic-bezier(.2,0,0,1),color .2s ease;
	}
	.bb-bottom-nav__item.is-active i{
		transform:scale(1.18) translateY(-1px);
	}
}

/* ── 15. WhatsApp FAB: compact on mobile ── */
@media (max-width:767px){
	.bb-whatsapp{
		width:54px;
		height:54px;
		left:12px;
	}
	.bb-whatsapp i{font-size:27px;}
}

/* ── 16. Sticky ATC bar: small screen sizing ── */
@media (max-width:480px){
	.bb-sticky-atc__inner{gap:8px;}
	.bb-sticky-atc__price{font-size:14px;}
	.bb-sticky-atc__btn{font-size:13.5px;min-height:46px;}
}

/* ── 17. Single product page: mobile polish ── */
@media (max-width:767px){
	.bb-product-gallery{padding:10px;border-radius:14px;}
	.bb-main-image{border-radius:12px;margin-bottom:12px;}
	.bb-thumbnails{gap:8px;}
	.bb-thumbnail{width:54px;height:54px;}
	.bb-product-info{padding:16px;border-radius:14px;}
	.bb-product-title{font-size:20px;}
	.bb-price-current{font-size:22px;}
	.bb-old-price{font-size:16px;}
	.bb-quantity-selector{flex-direction:column;align-items:flex-start;gap:10px;}
	.bb-quantity-control{width:100%;justify-content:center;}
	.bb-tabs-header{gap:6px;margin-bottom:18px;}
	.bb-tab-btn{padding:9px 14px;font-size:13.5px;}
	.bb-tab-content{padding:18px;border-radius:14px;}
	.bb-related-products h3{font-size:20px;margin-bottom:16px;}
	.bb-related-grid{gap:10px;}
	.bb-related-card{border-radius:14px;}
	.bb-related-info{padding:10px 10px 12px;}
	.bb-related-title{font-size:13px;margin-bottom:4px;}
	.bb-related-price{font-size:13px;}
}
@media (max-width:480px){
	.bb-product-title{font-size:18px;}
	.bb-price-current{font-size:19px;}
	.bb-tab-btn{
		padding:8px 10px;
		font-size:13px;
		flex:1;
		text-align:center;
	}
	.bb-tab-content{padding:14px;}
}

/* ── 18. Cart page: mobile layout ── */
@media (max-width:767px){
	.bb-cart-container{padding:12px;border-radius:14px;}
	.woocommerce-cart .cart_totals{justify-content:stretch;}
	.woocommerce-cart .cart_totals .bb-cart-summary{width:100%;}
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
		min-height:52px;
		font-size:16px;
	}
	.bb-summary-card{width:100%;}
}

/* ── 19. Checkout: mobile ── */
@media (max-width:767px){
	.woocommerce-checkout #place_order{
		min-height:52px;
		font-size:16px;
		border-radius:999px;
	}
	.woocommerce-checkout #order_review,
	.woocommerce-checkout #payment{border-radius:14px;}
}

/* ── 20. Shop page: filters & header bar ── */
@media (max-width:767px){
	.bb-shop-filters{padding:14px;border-radius:14px;}
	.bb-products-header{padding:12px;border-radius:14px;gap:8px;}
	.bb-results-count{font-size:12px;}
}

/* ── 21. Contact page ── */
@media (max-width:767px){
	.bb-contact-card{border-radius:14px;padding:14px;}
	.bb-contact-title{font-size:18px;}
}

/* ── 22. Error / 404 page ── */
@media (max-width:480px){
	.bb-error-card{padding:20px 14px;border-radius:16px;}
	.bb-error-code{font-size:42px;}
	.bb-error-title{font-size:22px;}
	.bb-error-icon{font-size:44px;}
}

/* ── 23. Empty cart page ── */
@media (max-width:480px){
	.bb-empty-cart-card{padding:20px 14px;border-radius:16px;}
	.bb-empty-cart-title{font-size:22px;}
	.bb-empty-cart-icon{font-size:50px;}
}

/* ── 24. Modals: compact on small screens ── */
@media (max-width:480px){
	.bb-modal{padding:12px;}
	.bb-modal__content{border-radius:16px;max-height:92vh;}
	.bb-modal__header{padding:16px 16px 0;margin-bottom:16px;}
	.bb-modal__body{padding:0 16px 16px;}
}

/* ── 25. Notification: slide from top on mobile (better UX than side-slide) ── */
@media (max-width:767px){
	.bb-notification{
		top:12px;
		right:12px;
		left:12px;
		max-width:none;
		min-width:auto;
		border-radius:14px;
		transform:translateY(-120%) scale(.96);
		opacity:0;
		transition:all .28s cubic-bezier(.2,0,0,1);
	}
	.bb-notification--show{
		transform:translateY(0) scale(1);
		opacity:1;
	}
}

/* ── 26. Disable hover lift transforms on touch devices ── */
@media (hover:none){
	.bb-product-card:hover,
	.bb-cat-card:hover,
	.bb-feature-card:hover,
	.bb-testimonial-card:hover,
	.bb-related-card:hover{
		transform:none;
		box-shadow:var(--bb-shadow-sm);
	}
	.bb-main-image:hover{transform:none;}
	.bb-product-card:hover .bb-product-card__image img{transform:none;}
	.bb-checkout-btn:hover,
	.bb-continue-shop:hover{transform:none;}
}

/* ── 27. Brand-colored tap highlight on interactive elements ── */
@media (max-width:1023px){
	a,button,[role="button"]{
		-webkit-tap-highlight-color:rgba(227,63,63,.10);
	}
}

/* ── 28. Breadcrumb: compact on mobile ── */
@media (max-width:767px){
	.bb-breadcrumb{padding:12px 0;}
	.bb-breadcrumb li{font-size:12px;}
}

/* ── 29. Page card: consistent padding on mobile ── */
@media (max-width:767px){
	.bb-page-card{padding:12px;border-radius:16px;}
}

/* ── 30. Account page: mobile nav stack ── */
@media (max-width:767px){
	.woocommerce-account .woocommerce-MyAccount-navigation{border-radius:14px;}
	.woocommerce-account .woocommerce-MyAccount-content{border-radius:14px;padding:14px;}
}

/* ── 31. Gallery modal nav: overlay on mobile (not outside image) ── */
@media (max-width:767px){
	.bb-gallery-modal__nav--prev{left:8px;}
	.bb-gallery-modal__nav--next{right:8px;}
	.bb-gallery-modal__close{
		top:8px;
		right:8px;
		background:rgba(0,0,0,.55);
	}
}

/* =================================================================
   DARK HEADER · ENHANCED FOOTER · GLOBAL UI/UX UPGRADES
   ================================================================= */

/* ══════════════════════════════════════════════════════
   CSS VARIABLE OVERRIDES — richer surfaces & shadows
   ══════════════════════════════════════════════════════ */
:root{
	--bb-card:rgba(255,255,255,.38);
	--bb-surface:rgba(255,255,255,.28);
	--bb-glass-bg:rgba(255,255,255,.32);
	--bb-shadow-sm:0 2px 8px rgba(0,0,0,.06),0 1px 0 rgba(255,255,255,.60) inset;
	--bb-shadow-md:0 8px 28px rgba(0,0,0,.10),0 1px 0 rgba(255,255,255,.50) inset;
	--bb-shadow-hover:0 20px 40px -8px rgba(0,0,0,.18);
	--bb-header-bg:rgba(6,12,22,.94);
	--bb-header-border:rgba(255,255,255,.07);
	--bb-footer-bg:#04080f;
}
body.dark{
	--bb-card:rgba(255,255,255,.07);
	--bb-surface:rgba(255,255,255,.05);
	--bb-glass-bg:rgba(255,255,255,.06);
	--bb-shadow-sm:0 2px 8px rgba(0,0,0,.28);
	--bb-shadow-md:0 8px 28px rgba(0,0,0,.38);
	--bb-shadow-hover:0 20px 40px -8px rgba(0,0,0,.55);
	--bb-footer-bg:#020408;
}

/* ══════════════════════════════════════════════════════
   DARK HEADER — always dark regardless of color scheme
   ══════════════════════════════════════════════════════ */
.bb-header{
	background:rgba(6,12,22,.95);
	backdrop-filter:blur(20px) saturate(180%);
	-webkit-backdrop-filter:blur(20px) saturate(180%);
	border-bottom:1px solid rgba(255,255,255,.07);
	color:#edf2f7;
	box-shadow:0 1px 0 rgba(255,255,255,.04),0 4px 20px rgba(0,0,0,.22);
}
body.dark .bb-header{
	background:rgba(2,5,12,.97);
	border-bottom:1px solid rgba(255,255,255,.05);
}
.bb-header::before{
	background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,0) 100%);
	opacity:1;
}
body.dark .bb-header::before{
	background:linear-gradient(180deg,rgba(255,255,255,.03) 0%,rgba(255,255,255,0) 100%);
	opacity:1;
}

/* Nav links: white on dark header */
.bb-nav__list a{
	color:rgba(230,240,252,.82);
	font-weight:600;
}
@media (hover:hover){
	.bb-nav__list a:hover{color:var(--bb-primary);}
}

/* Icon buttons: light on dark */
.bb-header__icons a.bb-icon-btn{
	color:rgba(230,240,252,.85);
	background:rgba(255,255,255,.08);
	border-color:rgba(255,255,255,.10);
	border-radius:12px;
}
@media (hover:hover){
	.bb-header__icons a.bb-icon-btn:hover{
		background:var(--bb-primary);
		border-color:var(--bb-primary);
		color:#ffffff;
		transform:translateY(-1px);
	}
}

/* Theme toggle: glass on dark */
.bb-theme-toggle{
	background:rgba(255,255,255,.08);
	border-color:rgba(255,255,255,.12);
	color:rgba(230,240,252,.85);
	border-radius:12px;
}
@media (hover:hover){
	.bb-theme-toggle:hover{
		background:rgba(255,255,255,.14);
		border-color:rgba(255,255,255,.18);
		color:#ffffff;
		transform:translateY(-1px);
	}
}

/* Cart count badge: contrast border for dark header */
.bb-cart-count{
	border:2px solid rgba(6,12,22,.95);
	transition:transform .2s cubic-bezier(.2,0,0,1);
}

/* Logo: always show the dark-background (light-colored) variant */
.bb-logo__img--light{display:none;}
.bb-logo__img--dark{display:block;}
body.dark .bb-logo__img--light{display:none;}
body.dark .bb-logo__img--dark{display:block;}
.bb-logo__text{color:#ffffff;}

/* ══════════════════════════════════════════════════════
   ENHANCED FOOTER — solid deep black
   ══════════════════════════════════════════════════════ */
.bb-footer{
	background:#04080f;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
	border-top:1px solid rgba(255,255,255,.06);
	padding:52px 0 28px;
}
body.dark .bb-footer{background:#020408;}

.bb-footer__cols{
	padding-bottom:36px;
	border-bottom:1px solid rgba(255,255,255,.06);
	margin-bottom:0;
}
.bb-footer__title{
	color:#ffffff;
	font-size:1.05rem;
	font-weight:900;
	letter-spacing:.2px;
	margin:0 0 16px 0;
	position:relative;
	display:inline-block;
}
.bb-footer__title::after{
	content:"";
	position:absolute;
	bottom:-6px;
	right:0;
	width:28px;
	height:2px;
	background:var(--bb-primary);
	border-radius:2px;
}
.bb-footer__list a{
	color:rgba(175,200,225,.70);
	font-size:.9rem;
	transition:color .2s ease,padding-right .2s ease;
	text-decoration:none;
}
@media (hover:hover){
	.bb-footer__list a:hover{
		color:var(--bb-primary);
		padding-right:4px;
	}
}
.bb-footer__list li{
	margin-bottom:9px;
}
.bb-footer p{
	color:rgba(165,190,215,.68);
	font-size:.88rem;
	line-height:1.7;
}
.bb-footer__contact-link{
	color:rgba(175,200,225,.70);
	font-size:.9rem;
}
@media (hover:hover){
	.bb-footer__contact-link:hover{color:var(--bb-primary);}
}

/* Social icons: rounded-square with hover lift + glow */
.bb-footer__social{gap:10px;margin-top:16px;}
.bb-footer__social a{
	width:38px;
	height:38px;
	background:rgba(255,255,255,.07);
	border:1px solid rgba(255,255,255,.09);
	border-radius:10px;
	color:rgba(190,215,240,.75);
	transition:all .22s ease;
}
@media (hover:hover){
	.bb-footer__social a:hover{
		background:var(--bb-primary);
		border-color:var(--bb-primary);
		color:#ffffff;
		transform:translateY(-3px);
		box-shadow:0 6px 16px rgba(227,63,63,.38);
	}
}
.bb-footer__copy{
	border-top:none;
	padding-top:24px;
	color:rgba(140,170,200,.45);
	font-size:.78rem;
	text-align:center;
}

/* ══════════════════════════════════════════════════════
   GLOBAL UI/UX IMPROVEMENTS
   ══════════════════════════════════════════════════════ */

/* Smooth scroll */
html{scroll-behavior:smooth;}

/* Better focus-visible ring: brand-colored, accessible */
:focus-visible{
	outline:2px solid var(--bb-primary);
	outline-offset:3px;
	border-radius:4px;
}

/* Product card: lift + glow on hover */
@media (hover:hover){
	.bb-product-card:hover{
		transform:translateY(-6px);
		box-shadow:0 16px 36px rgba(0,0,0,.13),0 0 0 1px rgba(227,63,63,.12);
	}
}

/* Product card: image loading shimmer */
.bb-product-card__image{
	position:relative;
	overflow:hidden;
	aspect-ratio:1/1;
	background:linear-gradient(90deg,var(--bb-surface) 0%,rgba(255,255,255,.18) 50%,var(--bb-surface) 100%);
	background-size:200% 100%;
	animation:bb-shimmer 1.8s ease-in-out infinite;
}
.bb-product-card__image img{
	position:relative;
	z-index:1;
	animation:none;
	background:transparent;
}
@keyframes bb-shimmer{
	0%{background-position:200% 0;}
	100%{background-position:-200% 0;}
}

/* Primary button: gradient + glow */
.bb-btn-primary{
	background:linear-gradient(135deg,var(--bb-primary) 0%,var(--bb-primary-dark) 100%);
	border-color:var(--bb-primary);
	box-shadow:0 4px 14px rgba(227,63,63,.28);
	letter-spacing:.2px;
}
@media (hover:hover){
	.bb-btn-primary:hover{
		background:linear-gradient(135deg,#f04f4f 0%,var(--bb-primary) 100%);
		box-shadow:0 6px 20px rgba(227,63,63,.40);
		transform:translateY(-1px);
	}
}

/* Price: gradient text for visual punch */
.bb-price--current,
.bb-price-current{
	background:linear-gradient(135deg,var(--bb-primary) 0%,#c0392b 100%);
	-webkit-background-clip:text;
	-webkit-text-fill-color:transparent;
	background-clip:text;
}
body.dark .bb-price--current,
body.dark .bb-price-current{
	background:linear-gradient(135deg,#ff6b6b 0%,var(--bb-primary) 100%);
	-webkit-background-clip:text;
	-webkit-text-fill-color:transparent;
	background-clip:text;
}
/* Fallback for browsers without clip-text */
@supports not (-webkit-background-clip:text){
	.bb-price--current,
	.bb-price-current{color:var(--bb-primary);}
}

/* Category card: icon in brand circle */
.bb-cat-card__icon{
	width:62px;
	height:62px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(227,63,63,.08);
	border:1.5px solid rgba(227,63,63,.16);
	border-radius:50%;
	font-size:1.7rem;
	transition:all .25s ease;
}
@media (hover:hover){
	.bb-cat-card:hover .bb-cat-card__icon{
		background:var(--bb-primary);
		border-color:var(--bb-primary);
		transform:scale(1.08);
		box-shadow:0 4px 14px rgba(227,63,63,.35);
	}
	.bb-cat-card:hover .bb-cat-card__icon i,
	.bb-cat-card:hover .bb-cat-card__icon svg{
		color:#ffffff;
		filter:brightness(10);
	}
}

/* Section title underline: better positioning */
.bb-section__title::after{bottom:-10px;}

/* Section dividers: subtle top accent line */
.bb-home-featured::before,
.bb-home-cat-products::before,
.bb-home-features::before{
	content:"";
	display:block;
	width:72px;
	height:3px;
	background:linear-gradient(90deg,transparent,var(--bb-primary),transparent);
	border-radius:2px;
	margin:0 auto 0;
	transform:translateY(-1px);
}

/* Pagination: current page highlight */
.woocommerce nav.woocommerce-pagination ul li span.current{
	background:var(--bb-primary);
	border-color:var(--bb-primary);
	color:#ffffff;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
	border-radius:12px;
	font-weight:900;
}

/* WooCommerce notices: colored left-border accent */
.woocommerce-message{
	border-right:4px solid #22c55e;
	background:rgba(34,197,94,.07);
}
.woocommerce-error{
	border-right:4px solid #ef4444;
	background:rgba(239,68,68,.07);
}
.woocommerce-info{
	border-right:4px solid var(--bb-primary);
	background:rgba(227,63,63,.07);
}

/* Bottom nav: richer glass surface */
.bb-bottom-nav{
	background:rgba(255,255,255,.86);
	backdrop-filter:blur(18px) saturate(160%);
	-webkit-backdrop-filter:blur(18px) saturate(160%);
	border-top:1px solid rgba(0,0,0,.07);
	box-shadow:0 -4px 24px rgba(0,0,0,.08);
}
body.dark .bb-bottom-nav{
	background:rgba(6,10,20,.93);
	border-top:1px solid rgba(255,255,255,.08);
	box-shadow:0 -4px 24px rgba(0,0,0,.35);
}

/* Sticky ATC: richer glass surface */
.bb-sticky-atc{
	background:rgba(255,255,255,.90);
	backdrop-filter:blur(18px) saturate(160%);
	-webkit-backdrop-filter:blur(18px) saturate(160%);
	box-shadow:0 -4px 20px rgba(0,0,0,.08);
	border-top:1px solid rgba(0,0,0,.06);
}
body.dark .bb-sticky-atc{
	background:rgba(6,10,20,.95);
	border-top:1px solid rgba(255,255,255,.08);
}

/* Single product Add to Cart button: stronger */
.bb-add-to-cart:not(.bb-disabled){
	background:linear-gradient(135deg,var(--bb-primary) 0%,var(--bb-primary-dark) 100%);
	box-shadow:0 4px 16px rgba(227,63,63,.28);
	letter-spacing:.3px;
}
@media (hover:hover){
	.bb-add-to-cart:not(.bb-disabled):hover{
		background:linear-gradient(135deg,#f04f4f 0%,var(--bb-primary) 100%);
		box-shadow:0 6px 22px rgba(227,63,63,.40);
	}
}

/* Sale badge: sharper */
.bb-sale-badge{
	background:linear-gradient(135deg,var(--bb-primary) 0%,#c0392b 100%);
	font-weight:900;
	letter-spacing:.5px;
	box-shadow:0 2px 8px rgba(227,63,63,.30);
}

/* Breadcrumb separator color */
.bb-breadcrumb li:not(:last-child)::after{
	color:rgba(100,120,150,.45);
}
.bb-breadcrumb a{
	color:var(--bb-text-2);
	transition:color .2s ease;
}
@media (hover:hover){
	.bb-breadcrumb a:hover{color:var(--bb-primary);}
}

/* Product main image: ensure proper display */
.bb-main-image{
	background:var(--bb-surface);
	border-radius:14px;
}

/* Related product image */
.bb-related-img{
	aspect-ratio:1/1;
	object-fit:cover;
	width:100%;
	display:block;
}

/* Quantity buttons: richer style */
.bb-quantity-btn{
	background:var(--bb-surface);
	border:1px solid var(--bb-border);
	border-radius:10px;
	width:38px;
	height:38px;
	font-size:1.1rem;
	font-weight:900;
	cursor:pointer;
	transition:all .2s ease;
	color:var(--bb-text);
	display:inline-flex;
	align-items:center;
	justify-content:center;
}
@media (hover:hover){
	.bb-quantity-btn:hover{
		background:var(--bb-primary);
		border-color:var(--bb-primary);
		color:#ffffff;
		transform:scale(1.08);
	}
}

/* Tab buttons: underline indicator style */
.bb-tab-btn{
	border:0;
	background:transparent;
	padding:10px 18px;
	font-weight:800;
	color:var(--bb-text-2);
	cursor:pointer;
	position:relative;
	transition:color .2s ease;
	border-radius:0;
}
.bb-tab-btn::after{
	content:"";
	position:absolute;
	bottom:0;
	right:0;
	width:0;
	height:2px;
	background:var(--bb-primary);
	border-radius:2px;
	transition:width .25s ease;
}
.bb-tab-btn.active{color:var(--bb-primary);}
.bb-tab-btn.active::after{
	width:100%;
}

/* Tabs header: underline container */
.bb-tabs-header{
	display:flex;
	gap:0;
	border-bottom:1px solid var(--bb-border);
	margin-bottom:22px;
}

/* Input focus: brand ring */
input:focus,textarea:focus,select:focus{
	border-color:rgba(227,63,63,.45) !important;
	box-shadow:0 0 0 3px rgba(227,63,63,.10) !important;
	outline:none;
}

/* Checkout proceed button: stronger */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
	background:linear-gradient(135deg,var(--bb-primary) 0%,var(--bb-primary-dark) 100%);
	border-color:var(--bb-primary);
	box-shadow:0 4px 16px rgba(227,63,63,.28);
	font-size:15px;
	letter-spacing:.3px;
}

/* Place order button: stronger */
.woocommerce-checkout #place_order{
	background:linear-gradient(135deg,var(--bb-primary) 0%,var(--bb-primary-dark) 100%);
	border-color:var(--bb-primary);
	box-shadow:0 4px 16px rgba(227,63,63,.28);
	letter-spacing:.3px;
}

/* Account nav active: gradient bg */
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
	background:linear-gradient(135deg,var(--bb-primary) 0%,var(--bb-primary-dark) 100%);
	border-color:var(--bb-primary);
	box-shadow:0 4px 12px rgba(227,63,63,.25);
}

/* ── Dark header: mobile icon sizing ── */
@media (max-width:1023px){
	.bb-header__icons a.bb-icon-btn{
		background:rgba(255,255,255,.08);
		border:1px solid rgba(255,255,255,.10);
		color:rgba(230,240,252,.85);
	}
	.bb-theme-toggle{
		background:rgba(255,255,255,.08);
		border-color:rgba(255,255,255,.12);
		color:rgba(230,240,252,.85);
	}
}

/* =================================================================
   COLOR PALETTE CONSISTENCY — Upgraded to 10/10
   Dark hero  ·  Uniform borders  ·  Visual rhythm  ·  Depth
   ================================================================= */

/* ── Root variable corrections for full light-mode consistency ── */
:root{
	/* Dark hero overlay: flows seamlessly from dark header */
	--bb-hero-overlay:linear-gradient(160deg,rgba(5,9,18,.84) 0%,rgba(3,7,14,.74) 100%);
	/* Dark glass panel on dark hero */
	--bb-hero-panel-bg:rgba(6,12,22,.62);
	--bb-hero-panel-border:rgba(255,255,255,.13);
	/* Fix invisible white-on-white borders in light mode */
	--bb-border:rgba(0,0,0,.09);
	--bb-glass-border:rgba(255,255,255,.40);
	/* Raise surface visibility for interactive states */
	--bb-bg-2:rgba(255,255,255,.65);
}

/* ── Hero: dark cinematic overlay (header → hero seamless) ── */
/* Remove the white radial light; replace with brand accent glow */
.bb-hero--home::after{
	background:radial-gradient(ellipse 60% 80% at 30% 50%,rgba(227,63,63,.10) 0%,transparent 70%);
}
body.dark .bb-hero--home::after{
	background:radial-gradient(ellipse 60% 80% at 30% 50%,rgba(227,63,63,.07) 0%,transparent 70%);
}

/* ── Hero panel: dark glass (matches dark overlay) ── */
.bb-hero__panel{
	background:rgba(6,12,22,.62);
	border-color:rgba(255,255,255,.13);
	box-shadow:0 8px 40px rgba(0,0,0,.38),0 1px 0 rgba(255,255,255,.06) inset;
	backdrop-filter:blur(16px) saturate(160%);
	-webkit-backdrop-filter:blur(16px) saturate(160%);
}
body.dark .bb-hero__panel{
	background:rgba(2,5,12,.70);
	border-color:rgba(255,255,255,.10);
}

/* Hero typography: crisp white on dark panel */
.bb-hero__title{
	color:#ffffff;
	text-shadow:0 2px 10px rgba(0,0,0,.45);
}
.bb-hero__subtitle{
	color:rgba(215,228,245,.90);
	text-shadow:0 1px 4px rgba(0,0,0,.30);
}

/* Hero badge: brand red glow */
.bb-hero__badge{
	background:var(--bb-primary);
	color:#ffffff;
	font-weight:700;
	letter-spacing:.2px;
	box-shadow:0 4px 14px rgba(227,63,63,.38);
}

/* Hero search row: white contrast on dark panel */
.bb-search--hero .bb-search__row{
	background:#ffffff;
	box-shadow:0 4px 24px rgba(0,0,0,.28);
}
.bb-search--hero .bb-search__input{
	color:#1e2a3a;
}
.bb-search--hero .bb-search__input::placeholder{
	color:rgba(30,42,58,.50);
}

/* ── Section visual rhythm: subtle alternating bg ── */
.bb-home-cats{background:transparent;}
.bb-home-featured{background:rgba(255,255,255,.20);box-shadow:0 0 0 1px rgba(0,0,0,.04) inset;}
.bb-home-cat-products{background:transparent;}
.bb-home-features{background:rgba(255,255,255,.20);box-shadow:0 0 0 1px rgba(0,0,0,.04) inset;}
.bb-home-testimonials{background:transparent;}

body.dark .bb-home-featured,
body.dark .bb-home-features{
	background:rgba(0,0,0,.20);
	box-shadow:0 0 0 1px rgba(255,255,255,.04) inset;
}

/* ── Card borders: now visible on light background ── */
.bb-cat-card,
.bb-product-card,
.bb-feature-card,
.bb-testimonial-card,
.bb-related-card{
	border-color:rgba(0,0,0,.07);
}
body.dark .bb-cat-card,
body.dark .bb-product-card,
body.dark .bb-feature-card,
body.dark .bb-testimonial-card,
body.dark .bb-related-card{
	border-color:rgba(255,255,255,.09);
}

/* ── Card surfaces: richer, more opaque ── */
.bb-testimonial-card,
.bb-feature-card{
	background:rgba(255,255,255,.52);
}
body.dark .bb-testimonial-card,
body.dark .bb-feature-card{
	background:rgba(0,0,0,.32);
}

/* ── Page cards: solid enough to read ── */
.bb-page-card{
	background:rgba(255,255,255,.55);
	border:1px solid rgba(0,0,0,.07);
	box-shadow:var(--bb-shadow-md);
}
body.dark .bb-page-card{
	background:rgba(0,0,0,.38);
	border-color:rgba(255,255,255,.08);
}

/* ── Cart / checkout cards ── */
.bb-cart-container,
.bb-summary-card{
	background:rgba(255,255,255,.55);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-cart-container,
body.dark .bb-summary-card{
	background:rgba(0,0,0,.35);
	border-color:rgba(255,255,255,.08);
}

/* ── Form inputs: consistent visible border in light mode ── */
input[type="text"]:not(.bb-search__input):not(.bb-quantity-input),
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
select,
textarea,
.woocommerce-account .woocommerce-Input,
.woocommerce-account .input-text{
	border:1px solid rgba(0,0,0,.14);
	background:rgba(255,255,255,.75);
}
body.dark input[type="text"]:not(.bb-search__input):not(.bb-quantity-input),
body.dark input[type="email"],
body.dark input[type="tel"],
body.dark input[type="password"],
body.dark input[type="number"],
body.dark select,
body.dark textarea,
body.dark .woocommerce-account .woocommerce-Input,
body.dark .woocommerce-account .input-text{
	border-color:rgba(255,255,255,.14);
	background:rgba(0,0,0,.28);
}

/* ── Tab content: visible surface ── */
.bb-tab-content{
	background:rgba(255,255,255,.55);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-tab-content{
	background:rgba(0,0,0,.30);
	border-color:rgba(255,255,255,.08);
}

/* ── Product info card on single product ── */
.bb-product-info{
	background:rgba(255,255,255,.52);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-product-info{
	background:rgba(0,0,0,.32);
	border-color:rgba(255,255,255,.08);
}
.bb-product-gallery{
	background:rgba(255,255,255,.52);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-product-gallery{
	background:rgba(0,0,0,.32);
	border-color:rgba(255,255,255,.08);
}

/* ── Autocomplete: proper surface ── */
.bb-autocomplete{
	border:1px solid rgba(0,0,0,.10);
	border-top:0;
	background:rgba(255,255,255,.96);
	box-shadow:var(--bb-shadow-md);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px);
}
body.dark .bb-autocomplete{
	background:rgba(14,20,34,.96);
	border-color:rgba(255,255,255,.10);
}
.bb-autocomplete__item{
	border-bottom-color:rgba(0,0,0,.06);
}
body.dark .bb-autocomplete__item{
	border-bottom-color:rgba(255,255,255,.06);
}

/* ── Section title: gradient underline ── */
.bb-section__title::after{
	background:linear-gradient(90deg,var(--bb-primary),#c0392b);
}

/* ── Section link arrow: correct RTL direction ── */
@media (hover:hover){
	.bb-section__link:hover i{transform:translateX(4px);}
}

/* ── Sale + featured badges: consistent ── */
.bb-sale-badge,
.bb-featured-badge{
	text-transform:uppercase;
	letter-spacing:.7px;
	font-weight:900;
}

/* ── Product card image bg: white surface ── */
.bb-product-card__image{
	background-color:rgba(255,255,255,.80);
}
body.dark .bb-product-card__image{
	background-color:rgba(0,0,0,.25);
}

/* ── Quantity input: no border on number input ── */
.bb-quantity-input{
	background:transparent;
	border:0;
	text-align:center;
	font-weight:700;
	width:40px;
}

/* ── WooCommerce shop filters: consistent surface ── */
.bb-shop-filters{
	background:rgba(255,255,255,.52);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-shop-filters{
	background:rgba(0,0,0,.32);
	border-color:rgba(255,255,255,.08);
}
.bb-products-header{
	background:rgba(255,255,255,.52);
	border:1px solid rgba(0,0,0,.07);
}
body.dark .bb-products-header{
	background:rgba(0,0,0,.32);
	border-color:rgba(255,255,255,.08);
}

/* ── Scroll row on mobile: smooth fade edges ── */
@media (max-width:1023px){
	.bb-home-cats .bb-container,
	.bb-home-featured .bb-container{
		position:relative;
	}
}

/* ── Hero bottom separator ── */
.bb-hero{border-bottom:1px solid rgba(0,0,0,.08);}
body.dark .bb-hero{border-bottom:0;}

/* =================================================================
   BRAND NAME · NAV ACTIVE STATE · FINAL MOBILE POLISH
   ================================================================= */

/* ══════════════════════════════════════════════════════
   LOGO BRAND TEXT — two-tone "Bibo[white]Bike[red]"
   Always shows beside the logo icon on dark header
   ══════════════════════════════════════════════════════ */
.bb-logo{gap:10px;}
.bb-logo__brand{
	display:inline-flex;
	align-items:center;
	line-height:1;
	white-space:nowrap;
}
.bb-logo__bibo{
	font-size:1.67rem;
	font-weight:900;
	color:#ffffff;
	letter-spacing:-.5px;
	font-family:"Cairo",system-ui,sans-serif;
}
.bb-logo__bike{
	font-size:1.67rem;
	font-weight:900;
	color:#ffffff
	letter-spacing:-.5px;
	font-family:"Cairo",system-ui,sans-serif;
}
/* Mobile: compact brand text */
@media (max-width:1023px){
	.bb-logo__bibo,
	.bb-logo__bike{font-size:1.08rem;letter-spacing:-.3px;}
	.bb-logo{gap:8px;}
	/* Constrain icon logo to square on mobile so brand text fits */
	.bb-logo__img,
	.bb-logo__img--light,
	.bb-logo__img--dark{
		height:40px;
		max-width:44px;
		object-fit:contain;
	}
}
@media (max-width:480px){
	.bb-logo__bibo,
	.bb-logo__bike{font-size:.97rem;}
	.bb-logo{gap:6px;}
}

/* ══════════════════════════════════════════════════════
   HEADER NAV ACTIVE STATE — red accent both light + dark
   Works because header is always dark (#06121a bg)
   ══════════════════════════════════════════════════════ */
.bb-nav__list li.current-menu-item > a,
.bb-nav__list li.current_page_item > a,
.bb-nav__list li.current-menu-ancestor > a,
.bb-nav__list li.current-page-ancestor > a{
	color:var(--bb-primary);
	position:relative;
}
.bb-nav__list li.current-menu-item > a::after,
.bb-nav__list li.current_page_item > a::after{
	content:"";
	position:absolute;
	bottom:2px;
	right:0;
	left:0;
	height:2px;
	background:var(--bb-primary);
	border-radius:2px;
}
/* Hover: same red in both modes */
.bb-nav__list a:hover{
	color:var(--bb-primary) !important;
}

/* ══════════════════════════════════════════════════════
   FINAL MOBILE POLISH — edge cases + visual refinements
   ══════════════════════════════════════════════════════ */

/* ── Header: prevent overflow on narrow phones ── */
@media (max-width:374px){
	.bb-logo__bibo,
	.bb-logo__bike{font-size:.88rem;}
	.bb-logo{gap:5px;}
	.bb-logo__img,
	.bb-logo__img--light,
	.bb-logo__img--dark{height:34px;max-width:34px;}
	.bb-header__icons a.bb-icon-btn,
	.bb-theme-toggle{width:36px;height:36px;min-width:36px;min-height:36px;}
}

/* ── Hero: full-width panel on mobile, prevent side overflow ── */
@media (max-width:767px){
	.bb-hero--home .bb-container{padding:0 16px;}
	.bb-hero__panel{
		width:100%;
		max-width:100%;
		box-sizing:border-box;
	}
}
/* ── Hero: tighten search on 360px phones ── */
@media (max-width:400px){
	.bb-search--hero .bb-search__btn{padding:0 10px;font-size:13px;}
	.bb-hero__title{font-size:clamp(1.4rem,7vw,1.9rem);}
}

/* ── Product cards: tighter on very small screens ── */
@media (max-width:360px){
	.bb-product-card__info{padding:6px 6px 4px;}
	.bb-product-card__title{font-size:.75rem;}
	.bb-price--current,.bb-price-current{font-size:.8rem;}
}

/* ── Category grid: 2 columns on very small screens ── */
@media (max-width:320px){
	.bb-cats-grid{grid-template-columns:repeat(2,1fr);gap:8px;}
}

/* ── Section head: prevent link overflow ── */
@media (max-width:400px){
	.bb-section__head{flex-direction:column;align-items:flex-start;gap:4px;}
	.bb-section__link{font-size:12px;}
}

/* ── Testimonials: padding tight on mobile ── */
@media (max-width:480px){
	.bb-testimonial-card{padding:18px 14px;}
	.bb-testimonial-card__text{font-size:.88rem;line-height:1.6;}
}

/* ── Feature card: icon sizing ── */
@media (max-width:360px){
	.bb-feature-card{padding:16px 10px;}
	.bb-feature-card__icon{font-size:1.6rem;}
	.bb-feature-card__title{font-size:.82rem;}
}

/* ── WhatsApp FAB: smaller on very small phones ── */
@media (max-width:374px){
	.bb-whatsapp{width:48px;height:48px;font-size:1.3rem;}
}

/* ── Single product: gallery + info stack cleanly ── */
@media (max-width:480px){
	.bb-product-gallery{border-radius:12px;}
	.bb-main-image{border-radius:10px;}
	.bb-product-info{border-radius:12px;padding:18px 14px;}
	.bb-product-title{font-size:1.15rem;}
	.bb-product-price{font-size:1.4rem;}
}

/* ── Cart/Checkout: ensure table never overflows ── */
@media (max-width:767px){
	.woocommerce-cart table.cart,
	.bb-cart-table{width:100%;table-layout:fixed;word-break:break-word;}
}

/* ── Footer: brand col spans full width on mobile ── */
@media (max-width:480px){
	.bb-footer__cols > :first-child{grid-column:1/-1;}
}

/* ── Modal: full-screen on small phones ── */
@media (max-width:374px){
	.bb-modal__content{
		border-radius:16px 16px 0 0;
		margin-top:auto;
		width:100%;
	}
}

/* ── Breadcrumb: hide on very small screens (saves vertical space) ── */
@media (max-width:374px){
	.bb-breadcrumb{display:none;}
}

/* ── Sticky ATC: tighten on small phones ── */
@media (max-width:374px){
	.bb-sticky-atc__inner{gap:8px;}
	.bb-sticky-atc__btn{font-size:13px;padding:0 14px;}
	.bb-sticky-atc__price{font-size:.9rem;}
}

/* ── General: no horizontal scroll ever ── */
html,body{overflow-x:hidden;max-width:100%;}
.bb-container{max-width:100%;}

/* ══════════════════════════════════════════════════════
   BOTTOM NAV — always-dark to match dark header
   Creates consistent dark bookends: header ↔ bottom nav
   ══════════════════════════════════════════════════════ */
.bb-bottom-nav{
	background:rgba(6,12,22,.97);
	backdrop-filter:blur(20px) saturate(160%);
	-webkit-backdrop-filter:blur(20px) saturate(160%);
	border-top:1px solid rgba(255,255,255,.07);
	box-shadow:0 -4px 28px rgba(0,0,0,.28);
}
body.dark .bb-bottom-nav{
	background:rgba(2,5,12,.98);
	border-top:1px solid rgba(255,255,255,.05);
}
/* Default item: dimmed white on dark bg */
.bb-bottom-nav__item{
	color:rgba(180,200,230,.50);
}
.bb-bottom-nav__item i{
	color:rgba(200,215,240,.60);
	font-size:20px;
}
.bb-bottom-nav__item span{
	font-size:11px;
	font-weight:700;
	letter-spacing:.2px;
}
/* Active item: full brand accent */
.bb-bottom-nav__item.is-active{
	color:var(--bb-primary);
}
.bb-bottom-nav__item.is-active i{
	color:var(--bb-primary);
}
