/* YHN 3.9.55.75 — context split from legacy yhn-site.css; selector declarations unchanged. */
/* YHN frontend component styles only */

/* =========================================================
   Product breadcrumb (YHN component) - Rank Math
   ========================================================= */
.single-product .yhn-rankmath-breadcrumb-wrap{
	margin: 6px auto 4px;
}
.single-product .yhn-rankmath-breadcrumb-wrap p{
	margin: 0;
}
.single-product .yhn-rankmath-breadcrumb-wrap nav,
.single-product .yhn-rankmath-breadcrumb-wrap .rank-math-breadcrumb{
	display: block !important;
	margin: 0 !important;
	padding: 8px 14px !important;
	background: linear-gradient(180deg, #fffefe 0%, #fff9fc 100%) !important;
	border: 1px solid #f1e4eb !important;
	border-radius: 14px !important;
	box-shadow:
		0 6px 18px rgba(25,25,25,.04),
		0 1px 0 rgba(255,255,255,.96) inset !important;
	color: #8a8088 !important;
	font-size: 12.5px !important;
	line-height: 1.7 !important;
	font-weight: 500 !important;
	white-space: normal !important;
	word-break: break-word !important;
}
.single-product .yhn-rankmath-breadcrumb-wrap a{
	display: inline !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #7d747d !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	transition: color .2s ease !important;
}
.single-product .yhn-rankmath-breadcrumb-wrap a:hover{
	color: #fe259a !important;
}
.single-product .yhn-rankmath-breadcrumb-wrap .separator{
	margin: 0 8px !important;
	color: #c7a7ba !important;
}
.single-product .yhn-rankmath-breadcrumb-wrap .last,
.single-product .yhn-rankmath-breadcrumb-wrap span:last-child{
	color: #d94b93 !important;
	font-weight: 700 !important;
}
.single-product .woocommerce-breadcrumb,
.single-product .breadcrumb-row,
.single-product .page-title-breadcrumbs,
.single-product .breadcrumbs{
	display: none !important;
}

@media (max-width: 849px){
	.single-product .yhn-rankmath-breadcrumb-wrap{
		margin: 4px auto 4px !important;
	}

	.single-product .yhn-rankmath-breadcrumb-wrap nav,
	.single-product .yhn-rankmath-breadcrumb-wrap .rank-math-breadcrumb{
		padding: 7px 11px !important;
		border-radius: 12px !important;
		font-size: 11.5px !important;
		line-height: 1.65 !important;
	}
}

/* =========================================================
   Single product sale countdown
   ========================================================= */
.single-product .yhn-sale-countdown{
	margin: -2px 0 16px;
}
.single-product .yhn-sale-countdown.is-hidden{
	display: none !important;
}
.single-product .yhn-sale-countdown__inner{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #f3dce8;
	border-radius: 16px;
	background: linear-gradient(180deg, #fffefe 0%, #fff6fb 100%);
	box-shadow: 0 8px 22px rgba(254,37,154,.07);
}
.single-product .yhn-sale-countdown__label{
	color: #d94b93;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: .2px;
	text-transform: uppercase;
	white-space: nowrap;
}
.single-product .yhn-sale-countdown__boxes{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	align-items: center;
}
.single-product .yhn-sale-countdown__item{
	min-width: 62px;
	padding: 8px 8px 7px;
	border-radius: 12px;
	background: linear-gradient(135deg, #fe259a 0%, #ff5aae 100%);
	box-shadow: 0 10px 20px rgba(254,37,154,.18);
	text-align: center;
}
.single-product .yhn-sale-countdown__num{
	display: block;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: .5px;
}
.single-product .yhn-sale-countdown__txt{
	display: block;
	margin-top: 5px;
	color: rgba(255,255,255,.95);
	font-size: 10px;
	line-height: 1.2;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .35px;
}

   Mobile
   ========================================================= */
@media (max-width: 849px){
	.single-product .yhn-sale-countdown{
		margin: -4px 0 14px;
	}
	.single-product .yhn-sale-countdown__inner{
		gap: 10px;
		padding: 11px 12px;
		border-radius: 14px;
	}
	.single-product .yhn-sale-countdown__label{
		width: 100%;
		font-size: 12px;
	}
	.single-product .yhn-sale-countdown__boxes{
		width: 100%;
		gap: 6px;
	}
	.single-product .yhn-sale-countdown__item{
		flex: 1 1 calc(25% - 5px);
		min-width: 0;
		padding: 8px 4px 7px;
		border-radius: 10px;
	}
	.single-product .yhn-sale-countdown__num{
		font-size: 17px;
	}
	.single-product .yhn-sale-countdown__txt{
		font-size: 9px;
	}

	.tax-product_cat .yhn-loop-sale-countdown,
	.tax-product_tag .yhn-loop-sale-countdown,
	.post-type-archive-product .yhn-loop-sale-countdown,
	.woocommerce-shop .yhn-loop-sale-countdown,
	.yhn-product-search .yhn-loop-sale-countdown{
		padding: 4px 8px !important;
		min-height: 24px !important;
		margin-top: 4px !important;
		gap: 4px !important;
	}
	.tax-product_cat .yhn-loop-sale-countdown__label,
	.tax-product_tag .yhn-loop-sale-countdown__label,
	.post-type-archive-product .yhn-loop-sale-countdown__label,
	.woocommerce-shop .yhn-loop-sale-countdown__label,
	.yhn-product-search .yhn-loop-sale-countdown__label{
		font-size: 9px !important;
	}
	.tax-product_cat .yhn-loop-sale-countdown__value,
	.tax-product_tag .yhn-loop-sale-countdown__value,
	.post-type-archive-product .yhn-loop-sale-countdown__value,
	.woocommerce-shop .yhn-loop-sale-countdown__value,
	.yhn-product-search .yhn-loop-sale-countdown__value{
		font-size: 9.5px !important;
	}

	.single-product .yhn-gallery-extras{
		visibility: hidden;
	}
	.single-product .yhn-gallery-extras.is-ready{
		visibility: visible;
	}
}
/* =========================================================
   V5 - Disclaimer + smart search
   ========================================================= */

/* Product editorial disclaimer */
.single-product .yhn-editorial-box{
	margin-top: 30px;
	padding: 16px;
	border-top: 1px solid #e5e5e5;
	font-size: 14px;
	line-height: 1.6;
	color: #555;
}
.single-product .yhn-editorial-box p{
	margin-bottom: 8px;
}
.single-product .yhn-editorial-box p:last-child{
	margin-bottom: 0;
}
.single-product .yhn-editorial-box a{
	color: #d94b93;
	text-decoration: none;
	font-weight: 700;
}
.single-product .yhn-editorial-box a:hover{
	color: #fe259a;
}

   3) PRODUCT PAGE TOP AREA
   ========================================================= */

.single-product div.product{ position: relative; }
.single-product .product-main{ margin-top: 8px; align-items: flex-start; }

.single-product .product-gallery,
.single-product .summary.entry-summary,
.single-product .product-info .entry-summary{
  background: linear-gradient(180deg, var(--bg-soft-3) 0%, var(--bg-soft) 100%);
  border: 1px solid var(--line-4);
  border-radius: var(--radius-2xl);
  box-shadow: var(--shadow-sm), 0 1px 0 rgba(255,255,255,.95) inset;
}

.single-product .product-gallery{
  position: relative;
  align-self: flex-start;
  height: auto !important;
  padding: 14px;
}

.single-product .product-gallery .woocommerce-product-gallery,
.single-product .product-gallery .flickity-viewport,
.single-product .product-gallery .product-images{ border-radius: 18px; overflow: hidden; }

.single-product .product-gallery .woocommerce-product-gallery__image img,
.single-product .product-gallery .product-thumbnails img,
.single-product .product-gallery img{ border-radius: 16px; }

.single-product .product-gallery .product-thumbnails,
.single-product .product-gallery .image-tools{ margin-top: 10px; }

.single-product .product-gallery .flickity-prev-next-button{
  width: 40px; height: 40px;
  background: rgba(255,255,255,.96);
  border: 1px solid #f0e4ea;
  box-shadow: 0 8px 20px rgba(20,20,20,.10);
}

.single-product .product-gallery .flickity-prev-next-button .arrow{ fill: var(--pink-dark); }
.single-product .product-gallery .flickity-prev-next-button:hover{ background: var(--pink); border-color: var(--pink); }
.single-product .product-gallery .flickity-prev-next-button:hover .arrow{ fill: #fff; }
.single-product .product-thumbnails .is-nav-selected img,
.single-product .product-thumbnails a:hover img{ box-shadow: 0 0 0 2px rgba(254,37,154,.20); }

.single-product .summary.entry-summary,
.single-product .product-info .entry-summary{ position: relative; padding: 22px 22px 20px !important; }

.single-product .product-info .product-title,
.single-product .product-info h1.product_title,
.single-product .entry-summary h1.product_title{
  margin: 0 0 10px !important;
  max-width: none !important;
  color: var(--pink-dark) !important;
  font-size: 29px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  letter-spacing: -.25px !important;
  text-wrap: pretty;
  word-break: normal !important;
}

.single-product .entry-summary .is-divider.small{
  width: 42px !important; max-width: 42px !important; height: 2px !important;
  margin: 8px 0 14px !important;
  background: linear-gradient(90deg, var(--pink) 0%, #ffc4de 100%) !important;
  border-radius: 999px !important; opacity: .95 !important;
}

.single-product .summary .price,
.single-product .entry-summary .price{
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px;
  margin: 10px 0 16px !important; padding: 12px 14px !important;
  background: linear-gradient(180deg, #fffdfd 0%, #fff6fb 100%);
  border: 1px solid #f3e1ea; border-radius: 16px !important;
  box-shadow: 0 8px 20px rgba(254,37,154,.06), 0 1px 0 rgba(255,255,255,.95) inset !important;
}

.single-product .summary .price ins,
.single-product .entry-summary .price ins{ text-decoration: none; }

.single-product .summary .price .amount,
.single-product .entry-summary .price .amount{ color: var(--pink); font-weight: 800; letter-spacing: -.2px; }

.single-product .summary .price > .amount,
.single-product .summary .price ins .amount,
.single-product .entry-summary .price > .amount,
.single-product .entry-summary .price ins .amount{ font-size: 32px !important; line-height: 1.08; }

.single-product .summary .price del,
.single-product .entry-summary .price del{ opacity: .65; }

.single-product .summary .price del .amount,
.single-product .entry-summary .price del .amount{ font-size: 16px; color: #978d95; font-weight: 600; }

.single-product .onsale,
.single-product .badge-container .onsale,
.single-product .badge-circle .badge-inner{
  background: linear-gradient(135deg, var(--pink) 0%, var(--pink-2) 100%) !important;
  box-shadow: 0 8px 18px rgba(254,37,154,.20);
}

.single-product .product-short-description p span[style*="font-size: 20pt"],
.single-product .product-short-description p span[style*="font-size:20pt"]{
  background: transparent !important; padding: 0 !important; border: 0 !important;
  border-radius: 0 !important; display: inline !important; font-size: inherit !important;
  line-height: inherit !important; box-shadow: none !important;
}

.single-product .product-short-description{
  margin: 16px 0 18px !important; padding: 16px 16px 15px !important;
  background: linear-gradient(180deg, #fffdfd 0%, #fff8fb 100%);
  border: 1px solid #f3e4eb; border-radius: 18px !important;
  box-shadow: 0 6px 18px rgba(30,20,30,.04) !important;
}

.single-product .product-short-description > p:first-of-type{ display: none !important; }

.single-product .product-short-description p{
  margin-bottom: 10px; color: var(--text-4); font-size: 14.5px !important; line-height: 1.8 !important;
}

.single-product .product-short-description p:last-child{ margin-bottom: 0; }

.single-product .product-short-description a[href^="tel:"],
.single-product .product-short-description p a[href^="tel:"]{
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  width: auto !important; min-width: 260px !important; min-height: 46px !important; padding: 0 22px !important;
  margin-top: 6px !important; background: linear-gradient(135deg, #fe259a 0%, #ff5aae 100%) !important;
  border: 2px solid #fe259a !important; border-radius: 999px !important; color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important; opacity: 1 !important; font-size: 14px !important;
  font-weight: 800 !important; letter-spacing: .3px !important; line-height: 1.15 !important;
  text-transform: uppercase !important; text-decoration: none !important; text-shadow: none !important;
  box-shadow: 0 10px 24px rgba(254,37,154,.24) !important; transition: all .25s ease !important;
}

.single-product .product-short-description a[href^="tel:"] *,
.single-product .product-short-description p a[href^="tel:"] *{
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; opacity: 1 !important; text-shadow: none !important;
}

.single-product .product-short-description a[href^="tel:"]:hover,
.single-product .product-short-description p a[href^="tel:"]:hover{
  background: #ffffff !important; color: #fe259a !important; -webkit-text-fill-color: #fe259a !important;
  box-shadow: 0 14px 28px rgba(254,37,154,.30) !important; transform: translateY(-1px) !important;
}

.single-product .product-short-description a[href^="tel:"]:hover *,
.single-product .product-short-description p a[href^="tel:"]:hover *{
  color: #fe259a !important; -webkit-text-fill-color: #fe259a !important;
}

.single-product .product-short-description a[href^="tel:"]::before,
.single-product .product-short-description a[href^="tel:"]::after,
.single-product .product-short-description p a[href^="tel:"]::before,
.single-product .product-short-description p a[href^="tel:"]::after{
  content: none !important; display: none !important;
}

.single-product form.cart{
  position: relative; overflow: hidden; margin-top: 16px !important; padding: 16px !important;
  background: linear-gradient(180deg, #fffefe 0%, #fff6fb 100%) !important;
  border: 1px solid #f3dce8 !important; border-radius: 18px !important;
  box-shadow: 0 10px 24px rgba(254,37,154,.06), 0 1px 0 rgba(255,255,255,.96) inset !important;
}

.single-product form.cart::before{
  content: ""; position: absolute; left: 14px; right: 14px; top: 0; height: 3px;
  border-radius: 999px; background: linear-gradient(90deg, #fe259a 0%, #ff87c6 100%); opacity: .95;
}

.single-product form.cart .quantity{ margin-right: 12px !important; }

.single-product form.cart .quantity input.qty{
  height: 44px; min-height: 44px; min-width: 60px !important;
  border-radius: 12px; border: 1px solid #ead7e1 !important; background: #fff !important;
  box-shadow: inset 0 1px 2px rgba(30,20,30,.03) !important; color: var(--text);
  font-size: 15px !important; font-weight: 700;
}

.single-product .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .button[type="submit"],
.single-product form.cart .button{
  position: relative; min-height: 50px !important; padding: 0 28px !important;
  border: 1px solid #fe259a !important; border-radius: 999px !important;
  background: linear-gradient(135deg, #fe259a 0%, #ff5aae 52%, #ff73b8 100%) !important;
  color: #fff !important; font-size: 14px !important; font-weight: 800 !important;
  letter-spacing: .35px !important; text-transform: uppercase !important;
  box-shadow: 0 14px 28px rgba(254,37,154,.24), 0 2px 0 rgba(255,255,255,.18) inset !important;
  transition: all .25s ease !important;
}

.single-product .single_add_to_cart_button::before,
.single-product form.cart .single_add_to_cart_button::before,
.single-product form.cart .button[type="submit"]::before,
.single-product form.cart .button::before{
  content: ""; position: absolute; inset: 1px; border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 48%);
  pointer-events: none;
}

.single-product .single_add_to_cart_button:hover,
.single-product form.cart .single_add_to_cart_button:hover,
.single-product form.cart .button[type="submit"]:hover,
.single-product form.cart .button:hover{
  transform: translateY(-2px) scale(1.01) !important;
  box-shadow: 0 18px 34px rgba(254,37,154,.30), 0 2px 0 rgba(255,255,255,.18) inset !important;
}

.single-product .single_add_to_cart_button:active,
.single-product form.cart .single_add_to_cart_button:active,
.single-product form.cart .button[type="submit"]:active,
.single-product form.cart .button:active{ transform: translateY(0) scale(.995) !important; }

.single-product .button.buy_now,
.single-product .buy-now-button,
.single-product .button.alt{ min-height: 48px !important; border-radius: 999px !important; }

.single-product .product_meta{
  display: flex; flex-wrap: wrap; gap: 14px 14px !important; margin-top: 18px !important; padding-top: 16px !important;
  border-top: 1px dashed #efdee7; font-size: 14px; line-height: 1.6; color: #666670;
}

.single-product .product_meta > span{
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; width: 100%;
}

.single-product .product_meta .sku_wrapper,
.single-product .product_meta .posted_in,
.single-product .product_meta .tagged_as{ min-width: 78px; color: #4f4f58; font-weight: 700; }

.single-product .product_meta .sku{
  display: inline-flex; align-items: center; min-height: 32px !important; padding: 5px 11px !important;
  border-radius: 999px !important; background: linear-gradient(180deg, #faf9f8 0%, #f5f2ef 100%);
  border: 1px solid #e9e2dc; color: #756a63; font-size: 13px; font-weight: 600; line-height: 1.2;
}

.single-product .product_meta a[rel="tag"]{
  display: inline-flex; align-items: center; min-height: 32px !important; margin: 2px 4px 2px 0;
  padding: 5px 11px !important; border-radius: 999px !important; font-size: 13px; font-weight: 600;
  line-height: 1.2; text-decoration: none !important; transition: var(--trans);
}

.single-product .product_meta .posted_in a[rel="tag"]{
  background: linear-gradient(180deg, #fff7fb 0%, #fff1f7 100%);
  border: 1px solid #f3d7e6; color: var(--pink-dark); box-shadow: 0 1px 6px rgba(217,75,147,.05);
}

.single-product .product_meta .posted_in a[rel="tag"]:hover{
  background: var(--pink); border-color: var(--pink); color: #fff !important;
  transform: translateY(-1px); box-shadow: 0 8px 18px rgba(254,37,154,.18);
}

.single-product .product_meta .tagged_as a[rel="tag"]{
  background: linear-gradient(180deg, #fffefd 0%, #fbfaf8 100%);
  border: 1px solid #ece5df; color: #857971; box-shadow: 0 2px 8px rgba(80,60,40,.04);
}

.single-product .product_meta .tagged_as a[rel="tag"]:hover{
  background: var(--text-2); border-color: var(--text-2); color: #fff !important;
  transform: translateY(-1px); box-shadow: 0 8px 18px rgba(40,40,50,.14);
}

.single-product .product_meta .posted_in a + a::before,
.single-product .product_meta .tagged_as a + a::before{ content: none !important; }

.single-product .social-icons,
.single-product .share-icons,
.single-product .product-share,
.single-product .entry-share{
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px !important; margin-top: 12px !important;
}

.single-product .social-icons a,
.single-product .share-icons a,
.single-product .product-share a,
.single-product .entry-share a{
  width: 36px !important; height: 36px !important; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 999px; background: linear-gradient(180deg, #fff 0%, #fffbfd 100%);
  border: 1px solid #eee1e8; color: #8f8590 !important; box-shadow: 0 6px 14px rgba(30,20,30,.06) !important;
  transition: var(--trans);
}

.single-product .social-icons a:hover,
.single-product .share-icons a:hover,
.single-product .product-share a:hover,
.single-product .entry-share a:hover{
  background: var(--pink); border-color: var(--pink); color: #fff !important; transform: translateY(-2px);
}

.single-product .social-icons i,
.single-product .share-icons i,
.single-product .product-share i,
.single-product .entry-share i{ font-size: 14px; line-height: 1; }

.single-product .summary.entry-summary > *:last-child,
.single-product .product-info .entry-summary > *:last-child{ margin-bottom: 0 !important; }

/* =========================================================
   4) PRODUCT TABS / ARTICLE
   ========================================================= */

.single-product :is(.woocommerce-tabs, .product-page-accordian, .product-tabs, .tabbed-content){
  position: relative; margin-top: 24px; padding: 0 !important;
  background: linear-gradient(180deg, var(--bg-soft-3) 0%, var(--bg-soft-2) 100%);
  border: 1px solid #efdee7; border-radius: var(--radius-xl);
  box-shadow: var(--shadow-md), 0 1px 0 rgba(255,255,255,.95) inset; overflow: hidden;
}

.single-product :is(.woocommerce-tabs, .product-page-accordian, .product-tabs, .tabbed-content)::before{
  content: ""; display: block; height: 5px;
  background: linear-gradient(90deg, var(--pink) 0%, #ffc2de 55%, #fff1f7 100%); opacity: .95;
}

.single-product :is(.woocommerce-tabs ul.tabs, .tabbed-content ul.nav, .tabbed-content .nav){
  display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 0 !important; padding: 14px 18px 0 !important;
  background: transparent; border-bottom: 0 !important;
}

.single-product :is(.woocommerce-tabs ul.tabs, .tabbed-content ul.nav, .tabbed-content .nav)::before,
.single-product :is(.woocommerce-tabs ul.tabs, .tabbed-content ul.nav, .tabbed-content .nav)::after{
  content: none !important; display: none !important;
}

.single-product :is(.woocommerce-tabs ul.tabs li, .tabbed-content ul.nav li, .tabbed-content .nav li){
  margin: 0 !important; padding: 0 !important; list-style: none !important;
}

.single-product :is(.woocommerce-tabs ul.tabs li a, .tabbed-content ul.nav li a, .tabbed-content .nav li a){
  display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 8px 14px;
  border-radius: 999px; background: #fff; border: 1px solid #f2e6ec; color: var(--text-3);
  font-size: 12.5px; font-weight: 800; line-height: 1.2; letter-spacing: .25px; text-transform: uppercase;
  text-decoration: none !important; box-shadow: 0 3px 10px rgba(20,20,20,.04); transition: var(--trans);
}

.single-product :is(.woocommerce-tabs ul.tabs li a:hover, .tabbed-content ul.nav li a:hover, .tabbed-content .nav li a:hover){
  background: #fff3f9; border-color: #f7cfe3; color: var(--pink-dark); transform: translateY(-1px);
}

.single-product .woocommerce-tabs ul.tabs li.active a,
.single-product .woocommerce-tabs ul.tabs li.current a,
.single-product .tabbed-content ul.nav li.active a,
.single-product .tabbed-content .nav li.active a,
.single-product .tabbed-content .nav-simple li.active a,
.single-product .product-page-accordian .nav li.active a{
  background: linear-gradient(135deg, var(--pink) 0%, var(--pink-2) 100%) !important;
  border-color: var(--pink); color: #fff !important; box-shadow: 0 10px 22px rgba(254,37,154,.22); transform: translateY(-1px);
}

.single-product :is(.woocommerce-tabs .panel, .woocommerce-Tabs-panel, .tabbed-content .panel, .tabbed-content .tab-panels){
  margin: 0 !important; padding: 18px 26px 28px !important; background: #fff;
}

.single-product :is(.woocommerce-Tabs-panel--description, #tab-description){
  background: linear-gradient(180deg, #fff 0%, var(--bg-soft) 100%);
}

.single-product :is(.woocommerce-tabs .panel, .woocommerce-Tabs-panel, .tabbed-content .panel){ color: var(--text-3); }

.single-product :is(.woocommerce-tabs .panel p, .woocommerce-Tabs-panel p, .tabbed-content .panel p){
  margin-bottom: 15px; color: var(--text-3); font-size: 15.5px; line-height: 1.88; letter-spacing: .02px;
}

.single-product :is(.woocommerce-tabs .panel strong, .woocommerce-Tabs-panel strong, .tabbed-content .panel strong){
  color: var(--text); font-weight: 700;
}

.single-product :is(.woocommerce-tabs .panel h2, .woocommerce-Tabs-panel h2, .tabbed-content .panel h2,
                    .woocommerce-tabs .panel h3, .woocommerce-Tabs-panel h3, .tabbed-content .panel h3,
                    .woocommerce-tabs .panel h4, .woocommerce-Tabs-panel h4, .tabbed-content .panel h4){
  color: var(--text); font-weight: 800; letter-spacing: -.15px;
}

.single-product :is(.woocommerce-tabs .panel h2, .woocommerce-Tabs-panel h2, .tabbed-content .panel h2){
  margin: 26px 0 10px; font-size: 26px; line-height: 1.28;
}

.single-product :is(.woocommerce-tabs .panel h3, .woocommerce-Tabs-panel h3, .tabbed-content .panel h3){
  margin: 22px 0 10px; font-size: 21px; line-height: 1.34;
}

.single-product :is(.woocommerce-tabs .panel h4, .woocommerce-Tabs-panel h4, .tabbed-content .panel h4){
  margin: 18px 0 8px; font-size: 17px; line-height: 1.4;
}

.single-product :is(.woocommerce-tabs .panel ul, .woocommerce-tabs .panel ol,
                    .woocommerce-Tabs-panel ul, .woocommerce-Tabs-panel ol,
                    .tabbed-content .panel ul, .tabbed-content .panel ol){
  margin: 0 0 18px 22px;
}

.single-product :is(.woocommerce-tabs .panel li, .woocommerce-Tabs-panel li, .tabbed-content .panel li){
  margin-bottom: 9px; color: var(--text-3); line-height: 1.82;
}

.single-product :is(.woocommerce-tabs .panel img, .woocommerce-Tabs-panel img, .tabbed-content .panel img){
  height: auto !important; margin-top: 8px; margin-bottom: 12px; border-radius: 16px; box-shadow: 0 10px 26px rgba(20,20,20,.07);
}

.single-product :is(.woocommerce-tabs .panel .gallery, .woocommerce-Tabs-panel .gallery, .tabbed-content .panel .gallery){
  gap: 12px;
}

.single-product :is(.woocommerce-tabs .panel .ez-toc-container, .woocommerce-Tabs-panel .ez-toc-container, .tabbed-content .panel .ez-toc-container,
                    .woocommerce-tabs .panel .toc, .woocommerce-Tabs-panel .toc, .tabbed-content .panel .toc){
  background: linear-gradient(180deg, #fffdfd 0%, #fff7fb 100%); border: 1px solid #f2dfe8;
  border-radius: 18px; padding: 14px 16px; box-shadow: 0 8px 20px rgba(25,25,25,.05);
}

.single-product :is(.woocommerce-tabs .panel table, .woocommerce-Tabs-panel table, .tabbed-content .panel table){
  width: 100%; border-collapse: collapse; overflow: hidden; border-radius: 16px;
  border: 1px solid #f1e4eb; background: #fff;
}

.single-product :is(.woocommerce-tabs .panel table th, .woocommerce-tabs .panel table td,
                    .woocommerce-Tabs-panel table th, .woocommerce-Tabs-panel table td,
                    .tabbed-content .panel table th, .tabbed-content .panel table td){
  padding: 12px 14px; border-bottom: 1px solid #f5edf1; text-align: left; font-size: 14px; line-height: 1.6;
}

.single-product :is(.woocommerce-tabs .panel table th, .woocommerce-Tabs-panel table th, .tabbed-content .panel table th){
  background: #fff6fb; color: #3f3942; font-weight: 700;
}

.single-product :is(.woocommerce-tabs .panel table td, .woocommerce-Tabs-panel table td, .tabbed-content .panel table td){
  color: var(--text-3);
}

.single-product .woocommerce-Tabs-panel--description > *:last-child,
.single-product #tab-description > *:last-child{ margin-bottom: 0 !important; }

/* =========================================================
   5) RELATED PRODUCTS
   ========================================================= */

.single-product .related.related-products-wrapper.product-section{ margin-top: 30px; padding-top: 2px; }

.single-product .related .product-section-title-related{
  margin-bottom: 14px; color: var(--text); font-size: 18px; line-height: 1.3; font-weight: 800; letter-spacing: .2px; text-transform: uppercase;
}

.single-product .related .product-section-title-related::after{
  content: ""; display: block; width: 42px; height: 3px; margin-top: 8px; border-radius: 999px;
  background: linear-gradient(90deg, var(--pink) 0%, #ffc2de 100%);
}

.single-product .related .product-small.col{ padding-left: 8px; padding-right: 8px; }

.single-product .related .product-small .box{
  background: #fff; border: 1px solid #f4edf1; border-radius: 18px; overflow: hidden;
  box-shadow: 0 6px 18px rgba(25,25,25,.05); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.single-product .related .product-small .box:hover{
  transform: translateY(-3px); border-color: #edd9e5; box-shadow: 0 14px 28px rgba(25,25,25,.09);
}

.single-product .related .box-image,
.single-product .related .box-image a{
  display: block !important; margin: 0 !important; padding: 0 !important;
}

.single-product .related .box-image img{
  display: block !important; width: 100% !important; max-width: 100% !important; height: auto !important;
  position: relative !important; border-radius: 0 !important; object-fit: cover !important;
}

.single-product .related .box-image .show-on-hover.back-image{ display: none !important; }

.single-product .related .box-text{ padding: 10px 11px 13px !important; text-align: center !important; }

.single-product .related .title-wrapper{ margin-bottom: 6px; min-height: 42px; }

.single-product .related .name.product-title,
.single-product .related .woocommerce-loop-product__title{
  margin: 0; color: var(--text); font-size: 14px; line-height: 1.45; font-weight: 600;
}

.single-product .related .name.product-title a,
.single-product .related .woocommerce-loop-product__title a{
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  color: var(--text) !important; text-decoration: none !important; transition: color .2s ease;
}

.single-product .related .name.product-title a:hover,
.single-product .related .woocommerce-loop-product__title a:hover{ color: var(--pink-dark) !important; }

.single-product .related .price-wrapper{ margin-top: 4px; }

.single-product .related .price{
  color: var(--pink); font-size: 14px; line-height: 1.35; font-weight: 800;
}

.single-product .related .price del{ margin-right: 4px; color: #8e8790; opacity: .5; }
.single-product .related .price ins{ text-decoration: none; }

.single-product .related .badge-circle .badge-inner{
  background: var(--pink) !important; box-shadow: 0 6px 16px rgba(254,37,154,.18);
}

.single-product .related .out-of-stock-label{
  background: rgba(47,47,54,.92); color: #fff; border-radius: 999px; font-size: 11px; font-weight: 700; padding: 5px 10px;
}

.single-product .related .cart-icon{
  background: #fff !important; color: var(--pink) !important; border: 1px solid #f1dce8; box-shadow: 0 4px 12px rgba(20,20,20,.08);
}

.single-product .related .cart-icon:hover{
  background: var(--pink) !important; color: #fff !important; border-color: var(--pink);
}

.single-product .related .flickity-prev-next-button{
  width: 38px; height: 38px; border: 1px solid var(--line-2); background: rgba(255,255,255,.96); box-shadow: 0 8px 18px rgba(20,20,20,.08);
}

.single-product .related .flickity-prev-next-button .arrow{ fill: var(--pink-dark); }
.single-product .related .flickity-prev-next-button:hover{ background: var(--pink); border-color: var(--pink); }
.single-product .related .flickity-prev-next-button:hover .arrow{ fill: #fff; }

/* =========================================================
   6) MOBILE - PRODUCT
   ========================================================= */

@media (max-width: 849px){
  #woocommerce_product_categories-13.widget_product_categories{ border-radius: 14px; padding: 14px 14px 12px; }
  #woocommerce_product_categories-13 .widget-title.shop-sidebar{ font-size: 15px; gap: 8px; }
  #woocommerce_product_categories-13 .is-divider.small{ width: 34px !important; max-width: 34px !important; margin: 7px 0 9px !important; }
  #woocommerce_product_categories-13 ul.product-categories > li > a{ padding: 10px 40px 10px 12px; font-size: 14px; border-radius: 10px; }
  #woocommerce_product_categories-13 ul.product-categories ul.children li > a{ padding: 7px 8px; font-size: 13px; }
  #woocommerce_product_categories-13 ul.product-categories li > button.toggle{ top: 6px; right: 4px; width: 26px; height: 26px; }

  .single-product .product-gallery{ padding: 10px; border-radius: 18px; }
  .single-product .summary.entry-summary,
  .single-product .product-info .entry-summary{ padding: 16px 14px 15px !important; border-radius: 18px; margin-top: 12px; }

  .single-product .product-info .product-title,
  .single-product .product-info h1.product_title,
  .single-product .entry-summary h1.product_title{
    font-size: 23px !important; line-height: 1.32 !important; font-weight: 700 !important; letter-spacing: 0 !important;
  }
  .single-product .summary .price,
  .single-product .entry-summary .price{ padding: 9px 10px; }

  .single-product .summary .price > .amount,
  .single-product .summary .price ins .amount,
  .single-product .entry-summary .price > .amount,
  .single-product .entry-summary .price ins .amount{ font-size: 27px !important; }

  .single-product .product-short-description{ padding: 13px 12px !important; border-radius: 15px !important; }
  .single-product form.cart{ padding: 13px !important; border-radius: 15px !important; }
  .single-product form.cart .quantity input.qty{ height: 40px; min-height: 40px; }

  .single-product .single_add_to_cart_button,
  .single-product form.cart .single_add_to_cart_button,
  .single-product form.cart .button[type="submit"],
  .single-product form.cart .button{
    min-height: 46px !important; width: 100%; font-size: 13.5px !important; letter-spacing: .25px !important;
  }

  .single-product .product_meta{ gap: 10px 12px; font-size: 13px; }
  .single-product .product_meta .sku_wrapper,
  .single-product .product_meta .posted_in,
  .single-product .product_meta .tagged_as{ min-width: auto; width: 100%; }

  .single-product .product_meta a[rel="tag"],
  .single-product .product_meta .sku{ min-height: 28px; padding: 4px 9px; font-size: 12.5px; }

  .single-product .social-icons a,
  .single-product .share-icons a,
  .single-product .product-share a,
  .single-product .entry-share a{ width: 34px !important; height: 34px !important; }

  .single-product .product-gallery .flickity-prev-next-button{ width: 28px; height: 28px; }

  .single-product :is(.woocommerce-tabs, .product-page-accordian, .product-tabs, .tabbed-content){ margin-top: 18px; border-radius: 16px; }

  .single-product :is(.woocommerce-tabs ul.tabs, .tabbed-content ul.nav, .tabbed-content .nav){
    gap: 8px; padding: 12px 14px 0 !important;
  }

  .single-product :is(.woocommerce-tabs ul.tabs li a, .tabbed-content ul.nav li a, .tabbed-content .nav li a){
    min-height: 34px; padding: 7px 12px; font-size: 12px;
  }

  .single-product :is(.woocommerce-tabs .panel, .woocommerce-Tabs-panel, .tabbed-content .panel, .tabbed-content .tab-panels){
    padding: 16px 14px 18px !important;
  }

  .single-product :is(.woocommerce-tabs .panel p, .woocommerce-Tabs-panel p, .tabbed-content .panel p){
    font-size: 14.4px; line-height: 1.8;
  }

  .single-product :is(.woocommerce-tabs .panel h2, .woocommerce-Tabs-panel h2, .tabbed-content .panel h2){ font-size: 21px; }
  .single-product :is(.woocommerce-tabs .panel h3, .woocommerce-Tabs-panel h3, .tabbed-content .panel h3){ font-size: 18px; }

  .single-product :is(.woocommerce-tabs .panel table th, .woocommerce-tabs .panel table td,
                      .woocommerce-Tabs-panel table th, .woocommerce-Tabs-panel table td,
                      .tabbed-content .panel table th, .tabbed-content .panel table td){
    padding: 10px 12px; font-size: 13px;
  }

  .single-product .related .product-section-title-related{ font-size: 16px; }
  .single-product .related .product-small.col{ padding-left: 6px; padding-right: 6px; }
  .single-product .related .box-text{ padding: 8px 8px 10px !important; }

  .single-product .related .name.product-title,
  .single-product .related .woocommerce-loop-product__title{ font-size: 12.8px; }

  .single-product .related .price{ font-size: 13px; }

  .single-product .related .flickity-prev-next-button{
    width: 22px !important; height: 22px !important; min-width: 22px !important; min-height: 22px !important;
    padding: 0 !important; background: var(--pink) !important; border: 1px solid var(--pink) !important;
    border-radius: 999px !important; box-shadow: 0 4px 10px rgba(254,37,154,.18) !important; opacity: 1 !important; transform: none !important;
  }

  .single-product .related .flickity-prev-next-button.previous{ left: -4px !important; }
  .single-product .related .flickity-prev-next-button.next{ right: -4px !important; }
  .single-product .related .flickity-button-icon{ width: 10px !important; height: 10px !important; }
  .single-product .related .flickity-prev-next-button .arrow{ fill: #fff !important; }
  .single-product .related .flickity-prev-next-button:hover{ background: var(--pink-dark) !important; border-color: var(--pink-dark) !important; }
  .single-product .related .flickity-prev-next-button:hover .arrow{ fill: #fff !important; }

  .single-product .product-short-description a[href^="tel:"],
  .single-product .product-short-description p a[href^="tel:"]{
    min-width: 100% !important; width: 100% !important; min-height: 44px !important; font-size: 13.5px !important;
  }
}

/* ===== FIX O VUONG NGOAI THUMB ACTIVE ===== */

.single-product .product-thumbnails .is-nav-selected,
.single-product .product-thumbnails .is-selected,
.single-product .product-thumbnails .flickity-slider .is-nav-selected,
.single-product .product-thumbnails a{
  background: transparent !important; box-shadow: none !important; border: 0 !important; outline: 0 !important;
}

.single-product .product-thumbnails .is-nav-selected img,
.single-product .product-thumbnails .is-selected img,
.single-product .product-thumbnails a:hover img{
  box-shadow: 0 0 0 2px rgba(254,37,154,.18) !important; border: 0 !important; outline: 0 !important;
}

.single-product .product-thumbnails .is-nav-selected::before,
.single-product .product-thumbnails .is-nav-selected::after,
.single-product .product-thumbnails .is-selected::before,
.single-product .product-thumbnails .is-selected::after,
.single-product .product-thumbnails a::before,
.single-product .product-thumbnails a::after{
  content: none !important; display: none !important;
}

.single-product .product-thumbnails .col,
.single-product .product-thumbnails .thumbnail-item,
.single-product .product-thumbnails .flickity-slider > div{
  background: transparent !important; border: 0 !important; box-shadow: none !important;
}

.single-product .product-thumbnails .img,
.single-product .product-thumbnails .box,
.single-product .product-thumbnails .box-image,
.single-product .product-thumbnails .attachment-woocommerce_thumbnail{
  background: transparent !important; border: 0 !important; outline: 0 !important; box-shadow: none !important;
}

/* ===== PRODUCT DESCRIPTION - XEM THEM / THU GON ===== */

.single-product .woocommerce-Tabs-panel--description,
.single-product #tab-description,
.single-product .product-description,
.single-product .tab-panels .panel.entry-content{ position: relative; }

.single-product .desc-readmore-wrap{ position: relative; }
.single-product .desc-readmore-content{ position: relative; overflow: hidden; transition: max-height .35s ease; }
.single-product .desc-readmore-wrap.is-collapsed .desc-readmore-content{ max-height: 820px; }

@media (max-width: 849px){
  .single-product .desc-readmore-wrap.is-collapsed .desc-readmore-content{ max-height: 400px; }
}

.single-product .desc-readmore-wrap.is-collapsed .desc-readmore-fade{
  position: absolute; left: 0; right: 0; bottom: 60px; height: 120px; pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,253,253,.75) 45%, rgba(255,255,255,1) 100%);
  z-index: 2;
}

@media (max-width: 849px){
  .single-product .desc-readmore-wrap.is-collapsed .desc-readmore-fade{ bottom: 46px; height: 76px; }
}

.single-product .desc-readmore-actions{
  position: relative; z-index: 3; display: flex; justify-content: center; margin-top: 10px; margin-bottom: 0;
}

.single-product .desc-readmore-btn{
  appearance: none; border: 1px solid #eadfe6;
  background: linear-gradient(180deg, #fffefe 0%, #fff8fb 100%);
  color: #4b4450; min-width: 170px; min-height: 44px; padding: 0 18px; border-radius: 999px;
  font-size: 12.5px; font-weight: 800; letter-spacing: .3px; line-height: 1; text-transform: uppercase;
  box-shadow: 0 6px 18px rgba(30,20,30,.05); cursor: pointer; transition: all .25s ease;
}

.single-product .desc-readmore-btn:hover{
  background: linear-gradient(135deg, #fe259a 0%, #ff5aae 100%); border-color: #fe259a; color: #fff;
  transform: translateY(-1px); box-shadow: 0 10px 24px rgba(254,37,154,.20);
}

.single-product .desc-readmore-wrap.is-expanded .desc-readmore-content{
  max-height: none !important; overflow: visible;
}

.single-product .desc-readmore-wrap.is-expanded .desc-readmore-fade{ display: none; }

@media (max-width: 849px){
  .single-product .desc-readmore-btn{ min-width: 154px; min-height: 38px; font-size: 11.8px; }
}

/* =========================================================
   16) MASTER CLEAN LOCK
   Nhẹ và sạch:
   - khóa sync sidebar title giữa archive / search / tag / shop
   - không tạo thêm block duplicate lớn
   ========================================================= */

.tax-product_cat #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.tax-product_tag #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.search #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.search-results #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.post-type-archive-product #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.woocommerce-shop #woocommerce_product_categories-13 .widget-title.shop-sidebar,
.single-product #woocommerce_product_categories-13 .widget-title.shop-sidebar{
  font-size: 16px !important;
}

@media (max-width: 849px){
  .tax-product_cat #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .tax-product_tag #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .search #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .search-results #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .post-type-archive-product #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .woocommerce-shop #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  .single-product #woocommerce_product_categories-13 .widget-title.shop-sidebar{
    font-size: 15px !important;
  }
}
/* =========================================================
   SIDEBAR TITLE - HARD FINAL SYNC
   Khóa đồng bộ cho category / tag / search / shop
   ========================================================= */

body.tax-product_cat #woocommerce_product_categories-13.widget_product_categories,
body.tax-product_tag #woocommerce_product_categories-13.widget_product_categories,
body.post-type-archive-product #woocommerce_product_categories-13.widget_product_categories,
body.woocommerce-shop #woocommerce_product_categories-13.widget_product_categories,
body.search #woocommerce_product_categories-13.widget_product_categories,
body.search-results #woocommerce_product_categories-13.widget_product_categories{
  padding: 16px 18px 16px !important;
  border-radius: 18px !important;
}

body.tax-product_cat #woocommerce_product_categories-13 .widget-title.shop-sidebar,
body.tax-product_tag #woocommerce_product_categories-13 .widget-title.shop-sidebar,
body.post-type-archive-product #woocommerce_product_categories-13 .widget-title.shop-sidebar,
body.woocommerce-shop #woocommerce_product_categories-13 .widget-title.shop-sidebar,
body.search #woocommerce_product_categories-13 .widget-title.shop-sidebar,
body.search-results #woocommerce_product_categories-13 .widget-title.shop-sidebar{
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 0 2px !important;
  color: #2f2f36 !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  letter-spacing: .15px !important;
  text-transform: uppercase !important;
}

body.tax-product_cat #woocommerce_product_categories-13 .widget-title.shop-sidebar::before,
body.tax-product_tag #woocommerce_product_categories-13 .widget-title.shop-sidebar::before,
body.post-type-archive-product #woocommerce_product_categories-13 .widget-title.shop-sidebar::before,
body.woocommerce-shop #woocommerce_product_categories-13 .widget-title.shop-sidebar::before,
body.search #woocommerce_product_categories-13 .widget-title.shop-sidebar::before,
body.search-results #woocommerce_product_categories-13 .widget-title.shop-sidebar::before{
  width: 8px !important;
  height: 8px !important;
  flex: 0 0 8px !important;
  box-shadow: 0 0 0 5px rgba(254,37,154,.08) !important;
}

body.tax-product_cat #woocommerce_product_categories-13 .is-divider.small,
body.tax-product_tag #woocommerce_product_categories-13 .is-divider.small,
body.post-type-archive-product #woocommerce_product_categories-13 .is-divider.small,
body.woocommerce-shop #woocommerce_product_categories-13 .is-divider.small,
body.search #woocommerce_product_categories-13 .is-divider.small,
body.search-results #woocommerce_product_categories-13 .is-divider.small{
  width: 40px !important;
  max-width: 40px !important;
  height: 3px !important;
  margin: 8px 0 10px !important;
  border-radius: 999px !important;
}

@media (max-width: 849px){
  body.tax-product_cat #woocommerce_product_categories-13.widget_product_categories,
  body.tax-product_tag #woocommerce_product_categories-13.widget_product_categories,
  body.post-type-archive-product #woocommerce_product_categories-13.widget_product_categories,
  body.woocommerce-shop #woocommerce_product_categories-13.widget_product_categories,
  body.search #woocommerce_product_categories-13.widget_product_categories,
  body.search-results #woocommerce_product_categories-13.widget_product_categories{
    padding: 14px 14px 12px !important;
    border-radius: 14px !important;
  }

  body.tax-product_cat #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  body.tax-product_tag #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  body.post-type-archive-product #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  body.woocommerce-shop #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  body.search #woocommerce_product_categories-13 .widget-title.shop-sidebar,
  body.search-results #woocommerce_product_categories-13 .widget-title.shop-sidebar{
    font-size: 15px !important;
    gap: 8px !important;
  }

  body.tax-product_cat #woocommerce_product_categories-13 .is-divider.small,
  body.tax-product_tag #woocommerce_product_categories-13 .is-divider.small,
  body.post-type-archive-product #woocommerce_product_categories-13 .is-divider.small,
  body.woocommerce-shop #woocommerce_product_categories-13 .is-divider.small,
  body.search #woocommerce_product_categories-13 .is-divider.small,
  body.search-results #woocommerce_product_categories-13 .is-divider.small{
    width: 34px !important;
    max-width: 34px !important;
    margin: 7px 0 9px !important;
  }
}
/* =========================================================
   A) SINGLE PRODUCT - TINH CHỈNH FULL COUNTDOWN
   Giữ cho trang chi tiết sản phẩm
   ========================================================= */

.single-product .yhn-sale-countdown{
  margin: -4px 0 14px !important;
}

.single-product .yhn-sale-countdown__inner{
  padding: 10px 12px !important;
  gap: 10px !important;
  border-radius: 14px !important;
}

.single-product .yhn-sale-countdown__label{
  font-size: 11px !important;
  line-height: 1.2 !important;
  letter-spacing: .4px !important;
  margin-bottom: 2px !important;
}

.single-product .yhn-sale-countdown__boxes{
  gap: 6px !important;
}

.single-product .yhn-sale-countdown__item{
  min-width: 56px !important;
  padding: 7px 6px 6px !important;
  border-radius: 10px !important;
}

.single-product .yhn-sale-countdown__num{
  font-size: 18px !important;
  line-height: 1 !important;
}

.single-product .yhn-sale-countdown__txt{
  font-size: 9px !important;
  letter-spacing: .3px !important;
  margin-top: 4px !important;
}

@media (max-width: 849px){
  .single-product .yhn-sale-countdown__item{
    flex: 1 1 calc(25% - 5px) !important;
    min-width: 0 !important;
  }
}


/* =========================================================
   YHN - PRODUCT BREADCRUMB POLISHED
   Dán ở CUỐI CÙNG Custom CSS
   ========================================================= */

.single-product .yhn-yoast-breadcrumb-wrap{
  margin: 12px auto 14px !important;
}

.single-product .yhn-yoast-breadcrumb{
  margin: 0 0 14px !important;
  padding: 10px 14px !important;
  background: linear-gradient(180deg, #fffefe 0%, #fff8fb 100%) !important;
  border: 1px solid #f2e1ea !important;
  border-radius: 16px !important;
  box-shadow:
    0 8px 22px rgba(30,20,30,.04),
    0 1px 0 rgba(255,255,255,.95) inset !important;
  color: #8a8088 !important;
  font-size: 12.5px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
}

.single-product .yhn-yoast-breadcrumb a{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  margin: 2px 4px 2px 0 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  border: 1px solid #f1dbe7 !important;
  color: #7a7078 !important;
  text-decoration: none !important;
  box-shadow: 0 3px 10px rgba(30,20,30,.03) !important;
  transition: all .22s ease !important;
}

.single-product .yhn-yoast-breadcrumb a:hover{
  background: linear-gradient(135deg, #fe259a 0%, #ff5aae 100%) !important;
  border-color: #fe259a !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 10px 18px rgba(254,37,154,.16) !important;
}

.single-product .yhn-yoast-breadcrumb .breadcrumb_last{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  margin: 2px 0 2px 4px !important;
  padding: 4px 12px !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #fff4fa 0%, #ffeef7 100%) !important;
  border: 1px solid #f4d4e5 !important;
  color: #d94b93 !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 12px rgba(254,37,154,.06) !important;
}

.single-product .yhn-yoast-breadcrumb .breadcrumb_last::before{
  content: "•";
  margin-right: 8px;
  color: #fe259a;
  font-size: 11px;
  line-height: 1;
}

@media (max-width: 849px){
  .single-product .yhn-yoast-breadcrumb-wrap{
    margin: 10px auto 12px !important;
  }

  .single-product .yhn-yoast-breadcrumb{
    padding: 9px 11px !important;
    border-radius: 14px !important;
    font-size: 12px !important;
    line-height: 1.7 !important;
  }

  .single-product .yhn-yoast-breadcrumb a{
    min-height: 26px !important;
    padding: 3px 9px !important;
    margin: 2px 3px 2px 0 !important;
    font-size: 11.5px !important;
  }

  .single-product .yhn-yoast-breadcrumb .breadcrumb_last{
    min-height: 26px !important;
    padding: 3px 10px !important;
    margin-left: 3px !important;
    font-size: 11.5px !important;
  }
}
/* =========================================================
   YHN - PRODUCT BREADCRUMB REFINED
   Dán ở CUỐI CÙNG Custom CSS để override block cũ
   ========================================================= */

.single-product .yhn-yoast-breadcrumb-wrap{
  margin: 10px auto 12px !important;
}

.single-product .yhn-yoast-breadcrumb{
  margin: 0 0 12px !important;
  padding: 9px 14px !important;
  background: linear-gradient(180deg, #fffefe 0%, #fff9fc 100%) !important;
  border: 1px solid #f2e6ec !important;
  border-radius: 14px !important;
  box-shadow:
    0 6px 18px rgba(30,20,30,.035),
    0 1px 0 rgba(255,255,255,.96) inset !important;
  color: #968c95 !important;
  font-size: 12.5px !important;
  line-height: 1.7 !important;
  font-weight: 500 !important;
  white-space: normal !important;
}

/* Link breadcrumb: bỏ kiểu pill dày, chuyển sang text sạch hơn */
.single-product .yhn-yoast-breadcrumb a{
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #7d747d !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color .2s ease !important;
}

.single-product .yhn-yoast-breadcrumb a:hover{
  background: transparent !important;
  border: 0 !important;
  color: #fe259a !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Mục cuối cùng nổi hơn nhẹ */
.single-product .yhn-yoast-breadcrumb .breadcrumb_last{
  color: #d94b93 !important;
  font-weight: 700 !important;
}

/* Separator mặc định của Yoast nhìn mềm hơn */
.single-product .yhn-yoast-breadcrumb{
  word-break: break-word !important;
}

@media (max-width: 849px){
  .single-product .yhn-yoast-breadcrumb-wrap{
    margin: 8px auto 10px !important;
  }

  .single-product .yhn-yoast-breadcrumb{
    padding: 8px 11px !important;
    border-radius: 12px !important;
    font-size: 11.5px !important;
    line-height: 1.65 !important;
  }
}
/* =========================================================
   YHN - FIX GAP UNDER PRODUCT BREADCRUMB
   Dán ở CUỐI CÙNG Custom CSS
   ========================================================= */

.single-product .yhn-yoast-breadcrumb-wrap{
  margin: 6px auto 4px !important;
}

.single-product .yhn-yoast-breadcrumb{
  margin: 0 !important;
  padding: 8px 14px !important;
}

.single-product .product-main{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.single-product div.product{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Nếu Flatsome còn chèn khoảng cách ở row đầu */
.single-product .row-content,
.single-product .row.row-main{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

@media (max-width: 849px){
  .single-product .yhn-yoast-breadcrumb-wrap{
    margin: 4px auto 4px !important;
  }

  .single-product .yhn-yoast-breadcrumb{
    padding: 7px 11px !important;
  }

  .single-product .product-main{
    margin-top: 0 !important;
  }
}
/* =========================================================
   YHN - HIDE DEFAULT PRODUCT PAGE TITLE / BREADCRUMB
   Giữ lại breadcrumb custom Yoast ở dưới
   ========================================================= */
.single-product .product-page-title{
  display: none !important;
}
/* =========================================================
   YHN - REVIEW FINAL UNIFIED
   DÁN CUỐI CÙNG CUSTOM CSS
   Chốt đồng bộ desktop + mobile, trước review + sau review
   
/* =========================================================
   YHN - REVIEW CLEAN FINAL ONE BLOCK
   Dán cuối cùng - chỉ giữ 1 block này cho review
   ========================================================= */

/* ===== cụm review dưới H1 ===== */
.single-product .yhn-product-review-top{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  margin:-2px 0 12px !important;
  padding:0 !important;
}

.single-product .yhn-product-review-top .star-rating{
  margin:0 !important;
  float:none !important;
  font-size:14px !important;
  line-height:1 !important;
}

.single-product .yhn-product-review-top .star-rating::before{
  color:#cfc7cd !important;
}

.single-product .yhn-product-review-top .star-rating span::before{
  color:#fe259a !important;
}

.single-product .yhn-product-review-top .woocommerce-review-link,
.single-product .yhn-product-review-top .yhn-write-review-link{
  display:inline-block !important;
  font-size:13px !important;
  line-height:1.4 !important;
  text-decoration:none !important;
  transition:all .2s ease !important;
}

.single-product .yhn-product-review-top .woocommerce-review-link{
  color:#7a7078 !important;
}

.single-product .yhn-product-review-top .woocommerce-review-link:hover{
  color:#fe259a !important;
}

.single-product .yhn-product-review-top .yhn-write-review-link{
  color:#7a7078 !important;
  border-bottom:1px solid rgba(122,112,120,.35) !important;
}

.single-product .yhn-product-review-top .yhn-write-review-link:hover{
  color:#fe259a !important;
  border-bottom-color:#fe259a !important;
}

/* ===== reset full width review area ===== */
.single-product #reviews,
.single-product #tab-reviews,
.single-product .woocommerce-Tabs-panel--reviews{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  padding-top:2px !important;
}

.single-product #reviews #comments,
.single-product #reviews #review_form_wrapper,
.single-product #reviews #review_form,
.single-product #reviews #respond,
.single-product #reviews .comment-respond{
  display:block !important;
  float:none !important;
  clear:both !important;
  width:100% !important;
  max-width:100% !important;
}

.single-product #reviews #comments{
  margin:0 0 18px !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

.single-product #reviews #review_form_wrapper{
  margin:18px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

.single-product #review_form{
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  max-width:100% !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

.single-product #review_form .comment-respond{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:22px !important;
  background:linear-gradient(180deg,#fffefe 0%,#fff8fb 100%) !important;
  border:1px solid #f1dfe8 !important;
  border-radius:18px !important;
  box-shadow:0 8px 20px rgba(30,20,30,.04) !important;
}

/* ===== heading review ===== */
.single-product #reviews .woocommerce-Reviews-title,
.single-product #reviews .woocommerce-Reviews-title span{
  color:#2f2f36 !important;
}

.single-product #reviews .woocommerce-noreviews{
  margin:0 0 18px !important;
  color:#7a7078 !important;
  font-size:14px !important;
  line-height:1.7 !important;
}

/* ===== list review ===== */
.single-product #reviews #comments ol.commentlist{
  margin:0 !important;
  padding:0 !important;
}

.single-product #reviews #comments ol.commentlist li{
  margin:0 0 14px !important;
  padding:18px 18px 16px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg,#fffefe 0%,#fff8fb 100%) !important;
  border:1px solid #f1dfe8 !important;
  box-shadow:0 8px 20px rgba(30,20,30,.04) !important;
}

.single-product #reviews #comments ol.commentlist li:last-child{
  margin-bottom:0 !important;
}

.single-product #reviews .comment_container{
  display:block !important;
}

.single-product #reviews #comments ol.commentlist li img.avatar{
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  border:1px solid #f0e4ea !important;
}

.single-product #reviews #comments .comment-text{
  width:auto !important;
  max-width:none !important;
  margin:0 0 0 60px !important;
  padding:0 !important;
  border:0 !important;
}

.single-product #reviews #comments .meta{
  margin-bottom:6px !important;
}

.single-product #reviews #comments .star-rating{
  margin-bottom:6px !important;
}

.single-product #reviews #comments .description p{
  margin-bottom:0 !important;
  color:#544f58 !important;
  font-size:14px !important;
  line-height:1.8 !important;
}

/* ===== form ===== */
.single-product #review_form .comment-reply-title{
  display:block !important;
  margin:0 0 12px !important;
  color:#2f2f36 !important;
  font-size:22px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  letter-spacing:-.15px !important;
}

.single-product #review_form .comment-notes{
  margin-bottom:12px !important;
  color:#6d6670 !important;
  font-size:13px !important;
  line-height:1.7 !important;
}

.single-product #review_form .comment-form{
  margin:0 !important;
}

.single-product #review_form p{
  margin-bottom:14px !important;
}

.single-product #review_form label{
  display:block !important;
  margin-bottom:6px !important;
  color:#3f3f46 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1.5 !important;
}

/* ===== rating stars ===== */
.single-product #review_form .comment-form-rating{
  margin-bottom:14px !important;
}

.single-product #review_form .comment-form-rating .stars,
.single-product #review_form .stars{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:2px !important;
  width:max-content !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  margin-top:2px !important;
  margin-bottom:0 !important;
  white-space:nowrap !important;
}

.single-product #review_form .comment-form-rating .stars a,
.single-product #review_form .stars a{
  margin:0 !important;
  color:#fe259a !important;
  flex:0 0 auto !important;
}

.single-product #review_form .comment-form-rating select#rating{
  width:100% !important;
  min-height:44px !important;
  padding:0 14px !important;
  border:1px solid #eadfe6 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#2f2f36 !important;
  box-shadow:none !important;
}

.single-product #review_form .comment-form-rating .stars + select#rating{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* ===== fields ===== */
.single-product #review_form textarea,
.single-product #review_form input[type="text"],
.single-product #review_form input[type="email"],
.single-product #review_form input[type="url"]{
  width:100% !important;
  border:1px solid #eadfe6 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#2f2f36 !important;
  box-shadow:none !important;
}

.single-product #review_form textarea{
  min-height:130px !important;
  padding:14px !important;
  resize:vertical !important;
}

.single-product #review_form input[type="text"],
.single-product #review_form input[type="email"],
.single-product #review_form input[type="url"]{
  min-height:44px !important;
  padding:0 14px !important;
}

.single-product #review_form textarea:focus,
.single-product #review_form input[type="text"]:focus,
.single-product #review_form input[type="email"]:focus,
.single-product #review_form input[type="url"]:focus,
.single-product #review_form select:focus{
  border-color:#fe259a !important;
  box-shadow:0 0 0 3px rgba(254,37,154,.08) !important;
  outline:none !important;
}

/* ===== submit ===== */
.single-product #review_form .form-submit{
  margin:8px 0 0 !important;
}

.single-product #review_form input[type="submit"],
.single-product #review_form .submit{
  min-width:110px !important;
  min-height:40px !important;
  padding:0 18px !important;
  border:1px solid #fe259a !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#fe259a 0%,#ff5aae 100%) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.2px !important;
  text-transform:uppercase !important;
  box-shadow:0 8px 18px rgba(254,37,154,.18) !important;
  transition:all .22s ease !important;
}

.single-product #review_form input[type="submit"]:hover,
.single-product #review_form .submit:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 12px 24px rgba(254,37,154,.24) !important;
}

/* ===== mobile ===== */
@media (max-width: 849px){
  .single-product .yhn-product-review-top{
    margin:0 0 10px !important;
    gap:6px 8px !important;
  }

  .single-product .yhn-product-review-top .star-rating{
    font-size:13px !important;
  }

  .single-product .yhn-product-review-top .woocommerce-review-link,
  .single-product .yhn-product-review-top .yhn-write-review-link{
    font-size:12.5px !important;
  }

  .single-product #reviews #comments{
    margin-bottom:14px !important;
  }

  .single-product #reviews #comments ol.commentlist li{
    padding:14px !important;
  }

  .single-product #reviews #comments .comment-text{
    margin-left:0 !important;
    margin-top:10px !important;
  }

  .single-product #review_form .comment-respond{
    padding:16px !important;
    border-radius:16px !important;
  }

  .single-product #review_form .comment-reply-title{
    font-size:19px !important;
  }

  .single-product #review_form textarea{
    min-height:110px !important;
  }

  .single-product #review_form .comment-form-rating .stars,
  .single-product #review_form .stars{
    gap:1px !important;
  }
}
/* ===== XOA VIEN HONG NGOAI CUA REVIEW WRAPPER ===== */
.single-product #reviews #review_form_wrapper{
  margin: 18px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.single-product #reviews #review_form_wrapper::before,
.single-product #reviews #review_form_wrapper::after{
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.single-product #reviews #review_form{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  max-width: 100% !important;
}

.single-product #reviews #respond{
  margin: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

/* giữ lại card form bên trong, chỉ bỏ viền ngoài */
.single-product #reviews #review_form .comment-respond{
  position: relative !important;
  z-index: 1 !important;
}
/* ===== REVIEW: XOA VIEN HONG NGOAI F12 FINAL ===== */
.single-product #reviews #review_form_wrapper,
.single-product #reviews #review_form,
.single-product #reviews #review_form.col-inner{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.single-product #reviews .review-form-inner,
.single-product #reviews .review-form-inner.has-border{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.single-product #reviews .review-form-inner::before,
.single-product #reviews .review-form-inner::after,
.single-product #reviews .review-form-inner.has-border::before,
.single-product #reviews .review-form-inner.has-border::after{
  content: none !important;
  display: none !important;
}

.single-product #reviews #respond.comment-respond{
  margin: 0 !important;
}
/* ===== REVIEW PATCH FINAL: dong bo desktop + mobile ===== */

/* Khung tổng reviews */
.single-product #reviews{
  margin-top: 0 !important;
}

.single-product #reviews.woocommerce-Reviews,
.single-product .woocommerce-Reviews .row{
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  margin: 0 !important;
}

/* Khi có 2 cột: comments + form */
@media (min-width: 850px){
  .single-product #reviews.woocommerce-Reviews.row{
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr) !important;
    align-items: start !important;
  }

  .single-product #reviews #comments,
  .single-product #reviews #review_form_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Xóa toàn bộ wrapper cũ dễ sinh viền/khung */
.single-product #reviews #review_form_wrapper,
.single-product #reviews #review_form,
.single-product #reviews #review_form.col-inner,
.single-product #reviews .review-form-inner,
.single-product #reviews .review-form-inner.has-border{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.single-product #reviews .review-form-inner::before,
.single-product #reviews .review-form-inner::after,
.single-product #reviews .review-form-inner.has-border::before,
.single-product #reviews .review-form-inner.has-border::after{
  content: none !important;
  display: none !important;
}

/* Card form thật */
.single-product #reviews #respond.comment-respond{
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 24px 26px !important;
  background: #fffafb !important;
  border: 1px solid #f6d9e7 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

/* Title */
.single-product #reviews #reply-title{
  display: block !important;
  margin: 0 0 14px !important;
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #333 !important;
}

/* Nhãn */
.single-product #reviews .comment-form label{
  display: block !important;
  margin-bottom: 8px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #444 !important;
}

/* Khoảng cách từng field */
.single-product #reviews .comment-form-rating,
.single-product #reviews .comment-form-comment,
.single-product #reviews .comment-form-author,
.single-product #reviews .comment-form-email{
  margin-bottom: 14px !important;
}

/* Rating sao: gọn 1 hàng desktop */
.single-product #reviews p.stars{
  margin: 6px 0 0 !important;
  line-height: 1 !important;
}

.single-product #reviews p.stars > span{
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 8px !important;
}

.single-product #reviews p.stars a{
  margin: 0 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

/* Input / textarea */
.single-product #reviews textarea,
.single-product #reviews input[type="text"],
.single-product #reviews input[type="email"]{
  width: 100% !important;
  border: 1px solid #edd9e3 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  color: #333 !important;
}

.single-product #reviews textarea{
  min-height: 120px !important;
  resize: vertical !important;
}

/* Nút gửi */
.single-product #reviews .form-submit{
  margin: 16px 0 0 !important;
}

.single-product #reviews input.submit,
.single-product #reviews button.submit,
.single-product #reviews .submit{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 92px !important;
  height: 38px !important;
  padding: 0 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg,#ff3fa7 0%,#ff2f9d 100%) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  box-shadow: 0 10px 20px rgba(255, 70, 160, 0.22) !important;
}

/* Box review đã đăng */
.single-product #reviews ol.commentlist{
  margin: 0 !important;
  padding: 0 !important;
}

.single-product #reviews ol.commentlist li.review{
  list-style: none !important;
  margin: 0 0 16px !important;
}

.single-product #reviews .comment_container{
  margin: 0 !important;
  padding: 18px 20px !important;
  background: #fffafb !important;
  border: 1px solid #f6d9e7 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

.single-product #reviews .comment-text{
  margin-left: 14px !important;
}

.single-product #reviews .woocommerce-Reviews-title{
  margin: 0 0 16px !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  color: #333 !important;
}

/* Khi chưa có review vẫn đẹp */
.single-product #reviews #comments p.woocommerce-noreviews{
  margin: 0 0 16px !important;
  color: #666 !important;
  font-size: 14px !important;
}

/* Mobile */
@media (max-width: 849px){
  .single-product #reviews.woocommerce-Reviews.row{
    display: block !important;
  }

  .single-product #reviews #comments,
  .single-product #reviews #review_form_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
  }

  .single-product #reviews #respond.comment-respond{
    padding: 18px 16px !important;
    border-radius: 16px !important;
  }

  .single-product #reviews #reply-title{
    font-size: 17px !important;
    margin-bottom: 12px !important;
  }

  .single-product #reviews p.stars > span{
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  .single-product #reviews p.stars a{
    font-size: 17px !important;
  }

  .single-product #reviews textarea{
    min-height: 110px !important;
  }

  .single-product #reviews input.submit,
  .single-product #reviews button.submit,
  .single-product #reviews .submit{
    width: auto !important;
    min-width: 96px !important;
    height: 40px !important;
  }

  .single-product #reviews .comment_container{
    padding: 16px !important;
    border-radius: 16px !important;
  }
}
/* =========================================================
   YHN - REVIEW HOTFIX CURRENT
   Fix case: chưa có review thì không chia 2 cột lệch
   Dán CUỐI CÙNG file CSS hiện tại
   ========================================================= */

.single-product #reviews #comments,
.single-product #reviews #review_form_wrapper{
  min-width: 0 !important;
}

/* Desktop bình thường: cân lại 2 cột mềm hơn */
@media (min-width: 850px){
  .single-product #reviews.woocommerce-Reviews.row{
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr) !important;
    column-gap: 24px !important;
    align-items: start !important;
  }
}

/* Khi CHƯA CÓ review: bỏ 2 cột, chuyển về 1 cột cho đỡ trống bên trái */
@media (min-width: 850px){
  .single-product #reviews.woocommerce-Reviews.row:has(#comments p.woocommerce-noreviews){
    grid-template-columns: 1fr !important;
  }

  .single-product #reviews.woocommerce-Reviews.row:has(#comments p.woocommerce-noreviews) #comments{
    margin-bottom: 0 !important;
  }

  .single-product #reviews.woocommerce-Reviews.row:has(#comments p.woocommerce-noreviews) #review_form_wrapper{
    max-width: 560px !important;
    margin: 0 auto !important;
  }
}

/* Form card nhìn đầy hơn */
.single-product #reviews #respond.comment-respond{
  width: 100% !important;
}

/* Sao rating gọn hơn */
.single-product #reviews p.stars{
  margin: 6px 0 0 !important;
  line-height: 1 !important;
}

.single-product #reviews p.stars > span{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  align-items: center !important;
}

.single-product #reviews p.stars a{
  margin: 0 !important;
  font-size: 17px !important;
  line-height: 1 !important;
}
/* =========================================================
   YHN - GALLERY EXTRAS FINAL CLEAN
   Khớp với functions.php sạch
   Desktop:
   - dưới gallery, cùng cột trái
   Mobile:
   - sau form.cart
   - trước product_meta
   ========================================================= */

/* Base */
.single-product .yhn-gallery-extras,
.single-product .yhn-gallery-extras-outside,
.single-product .yhn-gallery-extras-mobile-after-cart{
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.single-product .yhn-gallery-extra-card{
  padding: 10px 12px !important;
  background: #fff !important;
  border: 1px solid #f0e5eb !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}

.single-product .yhn-gallery-extra-card__title{
  margin: 0 0 7px !important;
  color: #8a7f88 !important;
  font-size: 10.5px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: .25px !important;
  text-transform: uppercase !important;
}

.single-product .yhn-gallery-extra-card__list{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  gap: 6px !important;
}

.single-product .yhn-gallery-extra-card__item{
  display: grid !important;
  grid-template-columns: 18px minmax(0,1fr) !important;
  gap: 7px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

.single-product .yhn-gallery-extra-card__icon{
  width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.single-product .yhn-gallery-extra-card--promo .yhn-gallery-extra-card__icon,
.single-product .yhn-gallery-extra-card--commitment .yhn-gallery-extra-card__icon{
  background: linear-gradient(135deg, #fe259a 0%, #ff5aae 100%) !important;
}

.single-product .yhn-gallery-extra-card__text{
  color: #5f5962 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
}

/* Desktop: box ở cột trái, dưới gallery */
@media (min-width: 850px){
  .single-product .yhn-gallery-stack{
    display: block !important;
  }

  .single-product .yhn-gallery-stack > .product-gallery.yhn-gallery-in-stack{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    flex: none !important;
  }

  .single-product .yhn-gallery-stack > .yhn-gallery-extras-outside{
    margin-top: 10px !important;
  }
}

/* Mobile: box sau cart, trước meta */
@media (max-width: 849px){
  .single-product .yhn-gallery-extras-mobile-after-cart{
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 14px !important;
    gap: 10px !important;
    clear: both !important;
  }

  .single-product .yhn-gallery-extras-mobile-after-cart .yhn-gallery-extra-card{
    padding: 11px 12px !important;
    border-radius: 14px !important;
  }

  .single-product .yhn-gallery-extras-mobile-after-cart .yhn-gallery-extra-card__title{
    margin-bottom: 6px !important;
    font-size: 10px !important;
  }

  .single-product .yhn-gallery-extras-mobile-after-cart .yhn-gallery-extra-card__list{
    gap: 5px !important;
  }

  .single-product .yhn-gallery-extras-mobile-after-cart .yhn-gallery-extra-card__text{
    font-size: 11.5px !important;
    line-height: 1.4 !important;
  }
}
@media (max-width: 849px){
  .single-product .yhn-gallery-extras-mobile-after-cart{
    margin: 10px 0 10px !important;
    gap: 8px !important;
  }

  .single-product .yhn-gallery-extras-mobile-after-cart + .product_meta{
    margin-top: 10px !important;
  }
}
/* YHN - tăng font 2 box ưu đãi / cam kết */
.single-product .yhn-gallery-extra-card__title{
  font-size: 12px !important;
  margin-bottom: 8px !important;
}

/* =========================================================
   YHN - REVIEW PAGINATION + REMOVE DUPLICATED SHOP MESSAGES
   ========================================================= */
.single-product #reviews .woocommerce-pagination{
  display:flex !important;
  justify-content:flex-start !important;
  margin:20px 0 4px !important;
}

.single-product #reviews .woocommerce-pagination ul.page-numbers{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:7px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

.single-product #reviews .woocommerce-pagination ul.page-numbers li{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.single-product #reviews .woocommerce-pagination .page-numbers a,
.single-product #reviews .woocommerce-pagination .page-numbers span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:38px !important;
  height:38px !important;
  padding:0 11px !important;
  border:1px solid #f0dce6 !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#554d53 !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1 !important;
  text-decoration:none !important;
}

.single-product #reviews .woocommerce-pagination .page-numbers .current,
.single-product #reviews .woocommerce-pagination .page-numbers a:hover{
  border-color:#fe259a !important;
  background:#fe259a !important;
  color:#fff !important;
}

.single-product .yhn-gallery-extra-card--commitment,
.single-product .yhn-product-badges .yhn-shipping-badge{
  display:none !important;
}

@media (max-width:849px){
  .single-product #reviews .woocommerce-pagination{
    justify-content:center !important;
    margin-top:16px !important;
  }

  .single-product #reviews .woocommerce-pagination .page-numbers a,
  .single-product #reviews .woocommerce-pagination .page-numbers span{
    min-width:36px !important;
    height:36px !important;
    padding:0 10px !important;
    font-size:12px !important;
  }
}

.single-product .yhn-gallery-extra-card__text{
  font-size: 13.5px !important;
  line-height: 1.5 !important;
}

.single-product .yhn-gallery-extra-card__icon{
  width: 20px !important;
  height: 20px !important;
  font-size: 10px !important;
}

.single-product .yhn-gallery-extra-card__item{
  grid-template-columns: 20px minmax(0,1fr) !important;
  gap: 8px !important;
}

@media (max-width: 849px){
  .single-product .yhn-gallery-extra-card__title{
    font-size: 11.5px !important;
  }

  .single-product .yhn-gallery-extra-card__text{
    font-size: 13px !important;
    line-height: 1.5 !important;
  }
}
/* =========================================================
   YHN - STOCK STATUS SINGLE PRODUCT
   ========================================================= */

.single-product .yhn-stock-status{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: -2px 0 12px;
  padding: 10px 15px;
  border-radius: 999px;
  border: 1px solid #cfe8d8;
  background: linear-gradient(180deg, #f9fffb 0%, #f3fff7 100%);
  box-shadow: 0 6px 18px rgba(31,179,91,.08);
  font-size: 14.5px;
  line-height: 1.2;
  font-weight: 700;
}

.single-product .yhn-stock-status__dot{
  width: 10px;
  height: 10px;
  min-width: 10px;
  border-radius: 999px;
  display: inline-block;
  background: #1fb35b;
  box-shadow: 0 0 0 4px rgba(31,179,91,.10);
}

.single-product .yhn-stock-status--instock{
  color: #1f7a45;
}

.single-product .yhn-stock-status--outofstock{
  color: #c62828;
  border-color: #f1caca;
  background: linear-gradient(180deg, #fff9f9 0%, #fff3f3 100%);
}

.single-product .yhn-stock-status--outofstock .yhn-stock-status__dot{
  background: #e53935;
  box-shadow: 0 0 0 4px rgba(229,57,53,.10);
}

.single-product .yhn-stock-status--backorder{
  color: #b26a00;
  border-color: #f0deb4;
  background: linear-gradient(180deg, #fffdf8 0%, #fff8ed 100%);
}

.single-product .yhn-stock-status--backorder .yhn-stock-status__dot{
  background: #f5a623;
  box-shadow: 0 0 0 4px rgba(245,166,35,.10);
}

@media (max-width: 849px){
  .single-product .yhn-stock-status{
    margin: -1px 0 10px;
    padding: 8px 12px;
    font-size: 13.5px;
  }

  .single-product .yhn-stock-status__dot{
    width: 9px;
    height: 9px;
    min-width: 9px;
  }
}
/* Ẩn stock text mặc định của WooCommerce ở single product
   vì đã có badge stock riêng của YHN */
.single-product .product-info .stock,
.single-product .summary .stock,
.single-product .summary p.stock{
  display: none !important;
}
/* =========================================================
   YHN - STOCK + SHIPPING BADGES SINGLE PRODUCT
   ========================================================= */

.single-product .yhn-product-badges{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: -2px 0 12px;
}

.single-product .yhn-product-badges .yhn-stock-status{
  margin: 0 !important;
}

.single-product .yhn-shipping-badge{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 15px;
  border-radius: 999px;
  border: 1px solid #cfe3f0;
  background: linear-gradient(180deg, #fcfeff 0%, #f3fbff 100%);
  box-shadow: 0 6px 18px rgba(58,130,190,.09);
  color: #2a678c;
  font-size: 14.5px;
  line-height: 1.2;
  font-weight: 700;
}
.single-product .yhn-shipping-badge__text{
  white-space: nowrap;
}

@media (max-width: 849px){
  .single-product .yhn-shipping-badge{
    padding: 8px 12px;
    font-size: 13.5px;
  }
}
		/* =========================================================
   FIX TẠM LỖI SHIPPING TRÀN KHỐI Ở TRANG GIỎ HÀNG
   ========================================================= */

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals > td.shipping__inner{
  padding: 0 !important;
  white-space: normal !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table{
  width: 100% !important;
  table-layout: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table tbody,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table tr,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table th,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table td{
  width: auto !important;
  max-width: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  box-shadow: none !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table th{
  width: 110px !important;
  min-width: 110px !important;
  text-align: left !important;
  vertical-align: top !important;
  background: #fff8fb !important;
  color: #4c4650 !important;
  font-weight: 700 !important;
  padding: 14px 16px !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table td{
  text-align: left !important;
  vertical-align: top !important;
  padding: 14px 16px !important;
  background: transparent !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__list{
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__list_item{
  margin: 0 0 6px !important;
  padding: 0 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__list_label{
  display: inline-block !important;
  color: #7a7078 !important;
  font-weight: 600 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .woocommerce-shipping-destination{
  margin: 6px 0 0 !important;
  color: #4c4650 !important;
  line-height: 1.6 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .woocommerce-shipping-destination strong{
  color: #2f2f36 !important;
  font-weight: 700 !important;
}

/* mobile */
@media (max-width: 849px){
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table tbody,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table tr,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table th,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table td{
    display: block !important;
    width: 100% !important;
  }

  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table th{
    min-width: 0 !important;
    padding-bottom: 8px !important;
    border-bottom: 0 !important;
  }

  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals .shipping__table td{
    padding-top: 0 !important;
  }
}
/* =========================================================
/* =========================================================
   3.9.53.8 — MOBILE SPACING FINAL
   Single-product mobile only. No desktop/tablet architecture changes.
   ========================================================= */
@media (max-width:549px){
  /* Description -> related: remove stacked panel/wrapper bottom padding while
     preserving a deliberate 30-40px visual handoff. */
  .single-product :is(.woocommerce-tabs,.tabbed-content){margin-bottom:0!important}
  .single-product :is(.woocommerce-tabs .tab-panels,.tabbed-content .tab-panels){padding-bottom:0!important}
  .single-product #tab-description:has(>.desc-readmore-wrap.is-collapsed),
  .single-product .woocommerce-Tabs-panel--description:has(>.desc-readmore-wrap.is-collapsed){padding-bottom:6px!important}
  .single-product .desc-readmore-actions{margin-top:10px!important;margin-bottom:0!important}
  .single-product .yhn-smart-related{margin-top:30px!important;padding-top:20px!important}

  /* Related -> footer: Flatsome/product-footer can retain generous section
     padding. Collapse only that trailing mobile space and keep a 44px handoff. */
  .single-product .product-footer{margin-bottom:0!important;padding-bottom:0!important}
  .single-product .product-footer>.container,
  .single-product .product-footer>.row{margin-bottom:0!important;padding-bottom:0!important}
  .single-product .yhn-smart-related{margin-bottom:44px!important}
  .single-product .yhn-smart-related__products>.products{padding-bottom:4px!important}

  /* Footer: 8-10% tighter vertical rhythm, same typography/structure. */
  #footer .footer-widgets.footer.footer-2{padding-top:16px!important;padding-bottom:10px!important}
  #footer .footer-widgets.footer.footer-2 .yhn-footer-col,
  #footer .footer-widgets.footer.footer-2 .col{margin-bottom:10px!important}
  #footer .footer-widgets.footer.footer-2 .widget-title{margin-bottom:6px!important}
  #footer .footer-widgets.footer.footer-2 .is-divider.small{margin-bottom:9px!important}
  #footer .footer-widgets.footer.footer-2 .yhn-footer-about p{margin-bottom:5px!important}
  #footer .footer-widgets.footer.footer-2 .yhn-footer-more{margin-top:6px!important}
  #footer .yhn-footer-classic-links a{min-height:32px!important;padding-top:2px!important;padding-bottom:2px!important}
  #footer .yhn-footer-contact-list{gap:7px!important}
  #footer .yhn-footer-contact p{margin-bottom:6px!important}
  #footer .yhn-footer-social-icons{margin-top:10px!important}
}


/* =========================================================
   3.9.54.8 — PRODUCT REVIEW STAR CONTROL FIX
   Keep WooCommerce's native rating JS/select semantics. Only repair the visual
   star control inside the single-product review form. No global anchor/svg rules.
   ========================================================= */
.single-product #review_form .comment-form-rating .stars,
.single-product #review_form .stars{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  overflow:visible!important;
  white-space:normal!important;
  margin:4px 0 0!important;
}
.single-product #review_form .comment-form-rating .stars span,
.single-product #review_form .stars span{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  direction:ltr!important;
}
.single-product #review_form .comment-form-rating .stars a,
.single-product #review_form .stars a{
  position:relative!important;
  display:inline-block!important;
  flex:0 0 28px!important;
  width:28px!important;
  height:32px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  text-indent:-9999px!important;
  font-size:0!important;
  line-height:32px!important;
  text-decoration:none!important;
  color:transparent!important;
}
.single-product #review_form .comment-form-rating .stars a::before,
.single-product #review_form .stars a::before{
  content:"★"!important;
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-indent:0!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:400!important;
  color:#d7d7dc!important;
}
/* Native WooCommerce selected/hover behavior: fill stars up to the active one. */
.single-product #review_form .stars:hover a::before{color:#fe259a!important}
.single-product #review_form .stars a:hover~a::before{color:#d7d7dc!important}
.single-product #review_form .stars.selected a:not(.active)::before{color:#fe259a!important}
.single-product #review_form .stars.selected a.active::before{color:#fe259a!important}
.single-product #review_form .stars.selected a.active~a::before{color:#d7d7dc!important}
/* Keep the native select available to form logic/accessibility but never visual. */
.single-product #review_form .comment-form-rating select#rating{
  position:absolute!important;
  left:-10000px!important;
  width:1px!important;
  height:1px!important;
  margin:0!important;
  padding:0!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
@media (max-width:549px){
  .single-product #review_form .comment-form-rating .stars a,
  .single-product #review_form .stars a{flex-basis:30px!important;width:30px!important;height:34px!important}
  .single-product #review_form .comment-form-rating .stars a::before,
  .single-product #review_form .stars a::before{font-size:29px!important}
}
