/* ==========================================================================
   Theme Tốt — giao diện mới 2026 (child theme shopnet)
   Mọi rule đều nằm dưới body.tt-ui để không đụng giao diện cũ khi tắt.
   Token màu: nhấn #C2255C · nền #F4F6FA · viền #E5E8EE · chữ #0F172A
   ========================================================================== */

body.tt-ui {
	--tt-accent: #C2255C;
	--tt-accent-dark: #A81D4F;
	--tt-accent-soft: #FCE7F0;
	--tt-bg: #F4F6FA;
	--tt-card: #FFFFFF;
	--tt-border: #E5E8EE;
	--tt-border-soft: #F1F5F9;
	--tt-text: #0F172A;
	--tt-muted: #475569;
	--tt-muted-2: #64748B;
	--tt-muted-3: #94A3B8;
	--tt-green: #15803D;
	--tt-green-bg: #DCFCE7;
	--tt-blue: #1D4ED8;
	--tt-amber-bg: #FFFBEB;
	--tt-amber-border: #FDE68A;
	--tt-amber-text: #78350F;
	--tt-font: 'Be Vietnam Pro', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	font-family: var(--tt-font);
	color: var(--tt-text);
	background: var(--tt-bg);
	-webkit-font-smoothing: antialiased;
}
/* Nền trang #F4F6FA: các khung bọc của Flatsome (#wrapper, #main, #content, .page-wrapper) phải trong suốt, thẻ (card) tự có nền trắng. */
body.tt-ui #wrapper, body.tt-ui #main, body.tt-ui #content, body.tt-ui .page-wrapper, body.tt-ui .shop-container { background: transparent; box-shadow: none; }
body.tt-ui h1, body.tt-ui h2, body.tt-ui h3, body.tt-ui h4, body.tt-ui h5, body.tt-ui h6,
body.tt-ui .header, body.tt-ui .nav > li > a, body.tt-ui .button, body.tt-ui input, body.tt-ui button, body.tt-ui select, body.tt-ui textarea {
	font-family: var(--tt-font);
}
body.tt-ui h1, body.tt-ui h2, body.tt-ui h3, body.tt-ui h4 { color: var(--tt-text); }

.tt-container { max-width: 1248px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
@media (max-width: 600px) { .tt-container { padding-left: 16px; padding-right: 16px; } }

/* --------------------------------------------------------------------------
   Nút & pill dùng chung
   -------------------------------------------------------------------------- */
body.tt-ui .tt-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	font-family: var(--tt-font); font-size: 14px; font-weight: 700; line-height: 1.2;
	min-height: 44px; padding: 0 16px; border-radius: 10px; border: 1px solid transparent;
	text-decoration: none; cursor: pointer; box-sizing: border-box; white-space: nowrap;
	transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s;
	text-transform: none; letter-spacing: 0; margin: 0;
}
body.tt-ui .tt-btn svg { flex: 0 0 auto; }
body.tt-ui .tt-btn--primary { background: var(--tt-accent); border-color: var(--tt-accent); color: #fff !important; }
body.tt-ui .tt-btn--primary:hover { background: var(--tt-accent-dark); border-color: var(--tt-accent-dark); }
body.tt-ui .tt-btn--demo { background: #fff; color: var(--tt-green) !important; border: 1.5px solid #86EFAC; }
body.tt-ui .tt-btn--demo:hover { background: #F0FDF4; }
body.tt-ui .tt-btn--ghost, body.tt-ui .tt-btn--soft { background: var(--tt-bg); color: #334155 !important; border: 1px solid var(--tt-border); }
body.tt-ui .tt-btn--ghost:hover, body.tt-ui .tt-btn--soft:hover { background: #fff; border-color: #CBD5E1; }
body.tt-ui .tt-btn--block { width: 100%; }
body.tt-ui .tt-btn.is-loading { opacity: .7; pointer-events: none; }

body.tt-ui .tt-pill {
	display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 700; line-height: 1;
	border-radius: 999px; padding: 4px 8px; background: var(--tt-border-soft); color: var(--tt-muted); text-decoration: none; white-space: nowrap;
}
body.tt-ui .tt-pill--ver { background: var(--tt-green-bg); color: var(--tt-green); }
body.tt-ui .tt-pill--accent { background: var(--tt-accent); color: #fff; text-transform: uppercase; letter-spacing: .5px; font-size: 10px; }
body.tt-ui .tt-pill--cat { font-size: 12px; font-weight: 600; padding: 5px 10px; }
body.tt-ui .tt-pill--cat:hover { color: var(--tt-accent); }
body.tt-ui .tt-pill--lg { font-size: 13px; padding: 6px 11px; gap: 6px; }
body.tt-ui .tt-dot { width: 8px; height: 8px; border-radius: 50%; background: #16A34A; display: inline-block; }
body.tt-ui .tt-link { font-size: 14px; font-weight: 700; color: var(--tt-blue); text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
body.tt-ui .tt-link:hover { color: var(--tt-accent); }
body.tt-ui .tt-muted { color: var(--tt-muted-2); font-size: 13px; margin: 0; }

/* --------------------------------------------------------------------------
   Thanh khuyến mãi
   -------------------------------------------------------------------------- */
body.tt-ui .tt-promo { background: var(--tt-accent-soft); border-bottom: 1px solid #FBCFE8; font-size: 13px; font-weight: 600; color: #9F1239; }
body.tt-ui .tt-promo__inner { position: relative; display: flex; align-items: center; justify-content: center; gap: 10px; flex-wrap: wrap; min-height: 38px; padding-top: 6px; padding-bottom: 6px; }
body.tt-ui .tt-promo__icon { color: var(--tt-accent); display: inline-flex; }
body.tt-ui .tt-promo__link { font-weight: 800; color: #9F1239; text-decoration: none; white-space: nowrap; }
body.tt-ui .tt-promo__close { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; padding: 0; margin: 0; border: 0; border-radius: 8px; background: transparent; color: var(--tt-muted-2); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: none; }
body.tt-ui .tt-promo__close:hover { background: var(--tt-accent-soft); color: var(--tt-accent); }
@media (max-width: 600px) {
	body.tt-ui .tt-promo__inner { flex-wrap: nowrap; justify-content: flex-start; align-items: center; gap: 8px; padding-right: 44px; font-size: 12px; }
	body.tt-ui .tt-promo__icon { display: none; }
	body.tt-ui .tt-promo__text { flex: 1 1 auto; min-width: 0; line-height: 1.4; }
	body.tt-ui .tt-promo__close { right: 8px; }
}

/* --------------------------------------------------------------------------
   Header Flatsome (giữ cấu trúc, đổi màu & bo góc)
   -------------------------------------------------------------------------- */
body.tt-ui #header { box-shadow: none; }
body.tt-ui #masthead, body.tt-ui .header-main, body.tt-ui .header-wrapper, body.tt-ui .header.has-sticky .header-wrapper { background: #fff !important; box-shadow: none; }
body.tt-ui #masthead { border-bottom: 1px solid var(--tt-border-soft); }
body.tt-ui .header-wrapper.stuck { box-shadow: 0 6px 20px rgba(15, 23, 42, .08); }
body.tt-ui .header .container { max-width: 1248px; padding-left: 24px; padding-right: 24px; }
body.tt-ui #logo img { max-height: 56px; width: auto; }

body.tt-ui .header-bottom { background: #fff !important; border-top: 1px solid var(--tt-border-soft); border-bottom: 1px solid var(--tt-border); box-shadow: none; }
body.tt-ui .header-bottom .nav > li > a,
body.tt-ui .header-bottom .nav-uppercase > li > a {
	color: var(--tt-text) !important; font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; padding-left: 14px; padding-right: 14px;
}
body.tt-ui .header-bottom .nav > li > a:hover, body.tt-ui .header-bottom .nav > li.active > a { color: var(--tt-accent) !important; }
body.tt-ui .header-bottom .nav-spacing-xlarge > li > a { padding-left: 11px; padding-right: 11px; }
body.tt-ui .header-vertical-menu__opener, body.tt-ui .header-vertical-menu__opener.dark {
	background: var(--tt-bg) !important; color: var(--tt-text) !important; border: 1px solid var(--tt-border); border-radius: 10px;
	padding: 0 12px; min-height: 40px; font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; box-shadow: none;
}
body.tt-ui .header-vertical-menu__opener .header-vertical-menu__title { color: var(--tt-text) !important; font-weight: 600; text-transform: none; letter-spacing: 0; font-size: 14px; }
body.tt-ui .header-vertical-menu__opener i { color: var(--tt-text) !important; }
body.tt-ui .woocommerce-store-notice { display: none !important; }
@media (max-width: 1100px) {
	body.tt-ui .header-bottom .nav > li > a, body.tt-ui .header-bottom .nav-spacing-xlarge > li > a { font-size: 13px; padding-left: 8px; padding-right: 8px; }
	body.tt-ui .header-vertical-menu__opener .header-vertical-menu__title { font-size: 13px; }
}
body.tt-ui .header-bottom .nav > li > a > i { color: inherit; }
body.tt-ui .header-bottom .nav-vertical-fly-out { background: #fff; border: 1px solid var(--tt-border); border-radius: 12px; box-shadow: 0 12px 32px rgba(15, 23, 42, .1); overflow: hidden; }
body.tt-ui .header-bottom .nav-vertical-fly-out > li > a { color: var(--tt-text) !important; font-weight: 600; font-size: 14px; text-transform: none; letter-spacing: 0; }
body.tt-ui .header-bottom .nav-vertical-fly-out > li > a:hover { background: var(--tt-bg); color: var(--tt-accent) !important; }

/* Tìm kiếm (FiboSearch) dạng viên thuốc */
body.tt-ui .header-search-form-wrapper { max-width: 560px; }
body.tt-ui .dgwt-wcas-search-wrapp { max-width: 100%; }
body.tt-ui .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input {
	background: var(--tt-bg) !important; border: 1px solid var(--tt-border) !important; border-radius: 999px !important;
	height: 44px; padding: 0 52px 0 18px; font-family: var(--tt-font); font-size: 14px; color: var(--tt-text); box-shadow: none !important;
}
body.tt-ui .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input:focus { border-color: #CBD5E1 !important; background: #fff !important; }
body.tt-ui .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit { background: transparent !important; color: var(--tt-muted-2) !important; box-shadow: none !important; border: 0; }
body.tt-ui .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit svg path { fill: var(--tt-muted-2); }

/* Nút header: Đăng nhập (chữ) · Giỏ hàng (viền) · Tải xuống (nhấn) */
body.tt-ui .header-nav .header-button > a.button {
	font-family: var(--tt-font); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0;
	min-height: 40px; line-height: 40px; padding: 0 14px; margin: 0 4px; border-radius: 10px; box-shadow: none;
}
body.tt-ui .header-nav .account-item .header-button > a.button { border: 0; background: transparent; color: var(--tt-text); }
body.tt-ui .header-nav .account-item .header-button > a.button:hover { background: var(--tt-bg); color: var(--tt-accent); }
body.tt-ui .header-nav .cart-item .header-button > a.button { border: 1px solid var(--tt-border); background: #fff; color: var(--tt-text); }
body.tt-ui .header-nav .cart-item .header-button > a.button:hover { border-color: #CBD5E1; }
body.tt-ui .header-nav .cart-item .header-button > a.button .icon-shopping-cart { margin-left: 6px; }
body.tt-ui .header-nav .header-button-1 .button { background: var(--tt-accent) !important; border-color: var(--tt-accent) !important; color: #fff !important; font-weight: 700; border-radius: 10px !important; min-height: 40px; line-height: 40px; padding: 0 16px; font-size: 14px; }
body.tt-ui .header-nav .header-button-1 .button:hover { background: var(--tt-accent-dark) !important; border-color: var(--tt-accent-dark) !important; }
body.tt-ui .icon-shopping-cart:after { background: var(--tt-accent); }
body.tt-ui .mobile-nav .nav-icon > a, body.tt-ui .mobile-nav .cart-item .header-button > a { color: var(--tt-text); border-color: var(--tt-border); border-radius: 10px; }
body.tt-ui .mobile-nav .header-button > a.button { background: #fff; }

/* --------------------------------------------------------------------------
   Breadcrumb
   -------------------------------------------------------------------------- */
body.tt-ui .tt-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 13px; color: var(--tt-muted-2); margin: 0 0 16px; text-transform: none; letter-spacing: 0; font-weight: 500; }
body.tt-ui .tt-breadcrumb a { color: var(--tt-muted-2); text-decoration: none; }
body.tt-ui .tt-breadcrumb a:hover { color: var(--tt-accent); }
body.tt-ui .tt-breadcrumb__sep { color: var(--tt-muted-3); }

/* --------------------------------------------------------------------------
   Thẻ sản phẩm trong lưới (Flatsome product box)
   -------------------------------------------------------------------------- */
body.tt-ui .product-small.box { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-shadow: none; transition: box-shadow .15s, border-color .15s; }
body.tt-ui .product-small.box:hover { box-shadow: 0 8px 24px rgba(15, 23, 42, .07); border-color: #D7DCE4; }
body.tt-ui .product-small .box-image { border-radius: 0; margin: 0; }
body.tt-ui .product-small .box-image .image-tools { display: none !important; }
body.tt-ui [class*="product_cat-kho-giao-dien"] .product-small .box-image .image-cover { padding-top: 75% !important; }
body.tt-ui .product-small .box-text { padding: 12px 14px 14px; text-align: center; display: flex; flex-direction: column; gap: 5px; flex: 1 1 auto; }
body.tt-ui .product-small .box-text .category { font-size: 11px; font-weight: 600; color: var(--tt-muted-2); text-transform: none; letter-spacing: 0; opacity: 1; margin: 0; line-height: 1.3; }
body.tt-ui .product-small .title-wrapper { margin: 0; }
body.tt-ui .product-small .title-wrapper .product-title, body.tt-ui .product-small .box-text .product-title {
	font-size: 14px; font-weight: 600; line-height: 1.4; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em;
}
body.tt-ui .product-small .product-title a { color: var(--tt-text); }
body.tt-ui .product-small .product-title a:hover { color: var(--tt-accent); }
body.tt-ui .product-small .star-rating { font-size: 12px; color: #F59E0B; margin: 0 auto; float: none; }
body.tt-ui .product-small .price-wrapper { margin: 0; }
body.tt-ui .product-small .price { font-size: 16px; font-weight: 800; color: var(--tt-accent); line-height: 1.3; }
body.tt-ui .product-small .price del { color: var(--tt-muted-3); font-weight: 400; font-size: 12px; opacity: 1; margin-right: 6px; }
body.tt-ui .product-small .price ins { text-decoration: none; }
body.tt-ui .product-small .badge-container { top: 10px !important; left: 10px !important; margin: 0; }
body.tt-ui .product-small .badge { width: auto; height: auto; min-width: 0; min-height: 0; }
body.tt-ui .product-small .badge-inner { background: var(--tt-accent); color: #fff; font-size: 11px; font-weight: 800; line-height: 1.4; border-radius: 999px; padding: 3px 8px; width: auto; height: auto; transform: none; min-width: 0; }
body.tt-ui .tt-loop-meta { display: flex; gap: 6px; flex-wrap: wrap; margin: 0 0 2px; justify-content: center; }
body.tt-ui .tt-card-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin-top: auto; padding-top: 8px; }
body.tt-ui .tt-card-actions .tt-btn { min-height: 40px; font-size: 13px; padding: 0 10px; }
body.tt-ui .product-small .box-text .add-to-cart-button, body.tt-ui .product-small .box-text .wc-forward { display: none; }

/* --------------------------------------------------------------------------
   Trang sản phẩm
   -------------------------------------------------------------------------- */
body.tt-ui .tt-product { padding: 16px 0 56px; }
body.tt-ui .tt-product__grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; grid-template-areas: "hero aside" "body aside"; gap: 20px 24px; align-items: start; }
body.tt-ui .tt-product__hero { grid-area: hero; display: flex; flex-direction: column; gap: 16px; min-width: 0; }
body.tt-ui .tt-product__aside { grid-area: aside; display: flex; flex-direction: column; gap: 14px; position: sticky; top: 90px; }
body.tt-ui .tt-product__body { grid-area: body; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
@media (max-width: 1023px) {
	body.tt-ui .tt-product__grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "hero" "aside" "body"; }
	body.tt-ui .tt-product__aside { position: static; }
}

body.tt-ui .tt-card { background: var(--tt-card); border: 1px solid var(--tt-border); border-radius: 16px; padding: 22px 24px; box-sizing: border-box; }
body.tt-ui .tt-card__title { margin: 0 0 14px; font-size: 18px; font-weight: 800; color: var(--tt-text); display: flex; align-items: center; gap: 10px; flex-wrap: wrap; line-height: 1.3; }
body.tt-ui .tt-card__title small { font-size: 12px; font-weight: 500; }
@media (max-width: 600px) { body.tt-ui .tt-card { padding: 16px; border-radius: 14px; } }

/* Hero */
body.tt-ui .tt-hero { display: flex; gap: 24px; flex-wrap: wrap; align-items: flex-start; }
body.tt-ui .tt-hero__thumb { width: 168px; height: 168px; border-radius: 14px; background: var(--tt-border-soft); border: 1px solid var(--tt-border); overflow: hidden; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; color: var(--tt-muted-3); }
body.tt-ui .tt-hero__img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.tt-ui .tt-hero__body { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
body.tt-ui .tt-hero__pills { display: flex; gap: 8px; flex-wrap: wrap; }
body.tt-ui .tt-hero__title-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
body.tt-ui .tt-hero__title { margin: 0; font-size: 30px; font-weight: 800; line-height: 1.15; letter-spacing: -.3px; color: var(--tt-text); }
body.tt-ui .tt-hero__meta { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; font-size: 14px; color: var(--tt-muted); }
body.tt-ui .tt-hero__meta a { color: var(--tt-muted); }
body.tt-ui .tt-hero__meta strong { color: var(--tt-text); }
body.tt-ui .tt-stars { display: inline-flex; gap: 2px; color: #F59E0B; }
body.tt-ui .tt-hero__sep { color: #CBD5E1; }
body.tt-ui .tt-hero__actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 4px; }
@media (max-width: 600px) {
	body.tt-ui .tt-hero { gap: 14px; }
	body.tt-ui .tt-hero__thumb { width: 96px; height: 96px; border-radius: 12px; }
	body.tt-ui .tt-hero__body { flex-basis: 100%; }
	body.tt-ui .tt-hero__title { font-size: 22px; }
	body.tt-ui .tt-hero__actions .tt-btn { flex: 1 1 calc(50% - 10px); }
}

/* Dải chỉ số */
body.tt-ui .tt-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; }
body.tt-ui .tt-stat { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; padding: 14px 16px; display: flex; gap: 12px; align-items: center; min-width: 0; }
body.tt-ui .tt-stat__icon { width: 40px; height: 40px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
body.tt-ui .tt-stat__icon--blue { background: #EFF6FF; color: #2563EB; }
body.tt-ui .tt-stat__icon--violet { background: #F5F3FF; color: #7C3AED; }
body.tt-ui .tt-stat__icon--green { background: #ECFDF5; color: var(--tt-green); }
body.tt-ui .tt-stat__icon--pink { background: var(--tt-accent-soft); color: var(--tt-accent); }
body.tt-ui .tt-stat__icon--amber { background: #FEF3C7; color: #B45309; }
body.tt-ui .tt-card__title .tt-stat__icon { width: 34px; height: 34px; }
body.tt-ui .tt-stat__label { display: block; font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); }
body.tt-ui .tt-stat__value { display: block; font-size: 16px; font-weight: 700; color: var(--tt-text); }
body.tt-ui .tt-stat__value--ok { color: var(--tt-green); display: flex; align-items: center; gap: 6px; }
@media (max-width: 600px) { body.tt-ui .tt-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } body.tt-ui .tt-stat { padding: 12px; gap: 10px; } body.tt-ui .tt-stat__icon { width: 34px; height: 34px; } body.tt-ui .tt-stat__value { font-size: 14px; } }

/* Mô tả */
body.tt-ui .tt-prose { font-size: 15px; line-height: 1.65; color: #334155; }
body.tt-ui .tt-prose p { margin: 0 0 14px; }
body.tt-ui .tt-prose h2 { font-size: 20px; font-weight: 800; margin: 24px 0 10px; }
body.tt-ui .tt-prose h3 { font-size: 16px; font-weight: 700; margin: 18px 0 8px; }
body.tt-ui .tt-prose h2:first-of-type { margin-top: 4px; }
body.tt-ui .tt-prose ul, body.tt-ui .tt-prose ol { margin: 0 0 14px; padding-left: 22px; }
body.tt-ui .tt-prose li { margin-bottom: 6px; }
body.tt-ui .tt-prose img { max-width: 100%; height: auto; border-radius: 12px; }
body.tt-ui .tt-prose a { color: var(--tt-blue); font-weight: 600; }
body.tt-ui .tt-prose table { width: 100%; border-collapse: collapse; font-size: 14px; }
body.tt-ui .tt-prose th, body.tt-ui .tt-prose td { border: 1px solid var(--tt-border); padding: 8px 10px; }

/* Changelog */
body.tt-ui .tt-changelog__row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-bottom: 10px; }
body.tt-ui .tt-changelog__row .tt-muted { display: inline-flex; align-items: center; gap: 5px; }
body.tt-ui .tt-ver-chip { font-size: 14px; font-weight: 800; color: var(--tt-text); background: var(--tt-border-soft); border-radius: 8px; padding: 5px 11px; }
body.tt-ui #tt-changelog .tt-muted { margin: 0 0 12px; font-size: 14px; line-height: 1.6; }

/* Danh sách ưu đãi / quyền lợi */
body.tt-ui .tt-perks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; color: #334155; }
body.tt-ui .tt-perks li { display: flex; gap: 10px; align-items: flex-start; margin: 0; }
body.tt-ui .tt-perks li svg { color: #16A34A; flex: 0 0 auto; margin-top: 2px; stroke-width: 2.5; }
body.tt-ui .tt-perks--grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px 20px; }
body.tt-ui .tt-perks--2col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 10px; font-size: 12px; }
body.tt-ui .tt-perks--2col li { align-items: center; gap: 6px; }
body.tt-ui .tt-perks--2col li svg { margin-top: 0; stroke-width: 3; }

/* Thẻ mua hàng */
body.tt-ui .tt-buy { display: flex; flex-direction: column; gap: 14px; padding: 20px; }
body.tt-ui .tt-buy__label { font-size: 11px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; color: var(--tt-muted-2); }
body.tt-ui .tt-option { border: 2px solid var(--tt-border); border-radius: 12px; background: #fff; transition: border-color .15s, background-color .15s; }
body.tt-ui .tt-option.is-selected { border-color: var(--tt-accent); background: #FFF7FA; }
body.tt-ui .tt-option__head { display: flex; gap: 12px; align-items: flex-start; padding: 14px; cursor: pointer; margin: 0; font-weight: 400; }
body.tt-ui .tt-option__head input[type="radio"] { width: 18px; height: 18px; margin: 3px 0 0; flex: 0 0 auto; accent-color: var(--tt-accent); }
body.tt-ui .tt-option__main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
body.tt-ui .tt-option__title { font-size: 15px; font-weight: 800; color: var(--tt-text); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; line-height: 1.3; }
body.tt-ui .tt-option__sub { font-size: 12px; color: var(--tt-muted-2); line-height: 1.4; }
body.tt-ui .tt-option__price { text-align: right; flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-end; line-height: 1.2; }
body.tt-ui .tt-option__price del { font-size: 12px; color: var(--tt-muted-3); }
body.tt-ui .tt-option__price strong { font-size: 20px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .tt-option__price small { font-size: 11px; color: var(--tt-muted-2); }
body.tt-ui .tt-option__price .woocommerce-Price-amount, body.tt-ui .tt-option__price .amount { font-size: inherit; font-weight: inherit; color: inherit; }
body.tt-ui .tt-option__price .price del .amount { font-size: 12px; font-weight: 400; color: var(--tt-muted-3); }
body.tt-ui .tt-option__body { display: none; padding: 0 14px 14px; flex-direction: column; gap: 10px; }
body.tt-ui .tt-option.is-selected .tt-option__body { display: flex; }
body.tt-ui .tt-buy form.cart { display: flex; flex-direction: column; gap: 10px; margin: 0; }
body.tt-ui .tt-buy form.cart .quantity, body.tt-ui .tt-buy form.cart .ux-quantity { display: none !important; }
body.tt-ui .tt-buy form.cart .wapf { order: 0; }
body.tt-ui .tt-buy form.cart .tt-buy-now { order: 1; width: 100%; min-height: 50px; font-size: 16px; }
body.tt-ui .tt-buy form.cart .single_add_to_cart_button {
	order: 2; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; margin: 0;
	background: #fff !important; color: var(--tt-accent) !important; border: 1.5px solid var(--tt-accent) !important; border-radius: 10px;
	font-family: var(--tt-font); font-size: 14px; font-weight: 700; text-transform: none; letter-spacing: 0; box-shadow: none; line-height: 1.2;
}
body.tt-ui .tt-buy form.cart .single_add_to_cart_button:hover { background: var(--tt-accent-soft) !important; }
body.tt-ui .tt-buy form.cart .single_add_to_cart_button i { display: none; }
/* Add-on Lifetime (Advanced Product Fields) */
body.tt-ui .tt-buy .wapf-field-container { margin: 0; }
body.tt-ui .tt-buy .wapf-field-label label span { font-size: 13px; font-weight: 700; color: var(--tt-text); }
body.tt-ui .tt-buy .wapf-checkbox .wapf-input-label { display: flex; gap: 10px; align-items: flex-start; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 10px; padding: 10px 12px; cursor: pointer; font-size: 13px; color: #334155; line-height: 1.45; margin: 6px 0 0; }
body.tt-ui .tt-buy .wapf-checkbox .wapf-label-text { font-weight: 700; color: var(--tt-text); }
body.tt-ui .tt-buy .wapf-pricing-hint { color: var(--tt-accent); font-weight: 700; }
body.tt-ui .tt-buy .wapf-field-description { font-size: 12px; color: var(--tt-muted-2); margin: 6px 0 0; }
body.tt-ui .tt-buy .wapf-product-totals { border-top: 1px dashed var(--tt-border); padding-top: 10px; margin: 2px 0 0; }
body.tt-ui .tt-buy .wapf-product-totals .wapf--inner > div { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 13px; color: var(--tt-muted); padding: 2px 0; }
body.tt-ui .tt-buy .wapf-product-totals .wapf--inner > div:last-child { font-size: 14px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .tt-buy .wapf-product-totals .wapf-grand-total { font-size: 22px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .tt-trust { list-style: none; margin: 0; padding: 0; display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; font-size: 11px; color: var(--tt-muted-2); }
body.tt-ui .tt-trust li { display: inline-flex; gap: 4px; align-items: center; margin: 0; }

/* Thẻ cam kết, hỗ trợ, lưu ý */
body.tt-ui .tt-trustcard { display: flex; flex-direction: column; gap: 12px; padding: 16px 18px; }
body.tt-ui .tt-trustcard__row { display: flex; gap: 12px; align-items: center; }
body.tt-ui .tt-trustcard__row .tt-stat__icon { width: 36px; height: 36px; }
body.tt-ui .tt-trustcard__row strong { display: block; font-size: 14px; color: var(--tt-text); }
body.tt-ui .tt-trustcard__row small { display: block; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-support { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px; }
body.tt-ui .tt-support > strong { font-size: 14px; color: var(--tt-text); }
body.tt-ui .tt-support > small { font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-support__links { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
body.tt-ui .tt-support__links .tt-btn { min-height: 40px; font-size: 13px; padding: 0 12px; }
body.tt-ui .tt-notecard { background: var(--tt-amber-bg); border-color: var(--tt-amber-border); color: var(--tt-amber-text); padding: 16px 18px; display: flex; flex-direction: column; gap: 10px; }
body.tt-ui .tt-notecard__head { display: flex; align-items: center; gap: 10px; }
body.tt-ui .tt-notecard__head .tt-stat__icon { width: 32px; height: 32px; }
body.tt-ui .tt-notecard h2 { margin: 0; font-size: 14px; font-weight: 800; color: var(--tt-amber-text); }
body.tt-ui .tt-notecard ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 13px; line-height: 1.55; }
body.tt-ui .tt-notecard li { display: block; position: relative; padding-left: 14px; margin: 0; }
body.tt-ui .tt-notecard li::before { content: ""; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; border-radius: 50%; background: #B45309; }
body.tt-ui .tt-note--inline { display: flex; gap: 8px; align-items: flex-start; background: var(--tt-amber-bg); border: 1px solid var(--tt-amber-border); border-radius: 10px; padding: 10px 12px; font-size: 13px; color: var(--tt-amber-text); }
body.tt-ui .tt-note--inline svg { color: #B45309; flex: 0 0 auto; margin-top: 1px; }

/* Đánh giá (WooCommerce reviews) */
body.tt-ui .tt-reviews .woocommerce-Reviews-title, body.tt-ui .tt-reviews #reply-title { font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 14px; color: var(--tt-text); }
body.tt-ui .tt-reviews .commentlist { list-style: none; margin: 0; padding: 0; }
body.tt-ui .tt-reviews .commentlist li { margin: 0 0 12px; }
body.tt-ui .tt-reviews .comment_container { display: flex; gap: 12px; align-items: flex-start; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 12px; padding: 12px; }
body.tt-ui .tt-reviews .comment_container img.avatar { width: 40px; height: 40px; border-radius: 999px; flex: 0 0 auto; }
body.tt-ui .tt-reviews .comment-text { flex: 1; min-width: 0; font-size: 14px; color: #334155; }
body.tt-ui .tt-reviews .comment-text .meta { font-size: 12px; color: var(--tt-muted-2); margin: 4px 0 6px; }
body.tt-ui .tt-reviews .comment-text .description p { margin: 0; line-height: 1.55; }
body.tt-ui .tt-reviews .star-rating { color: #F59E0B; font-size: 13px; }
body.tt-ui .tt-reviews #review_form input[type="text"], body.tt-ui .tt-reviews #review_form input[type="email"], body.tt-ui .tt-reviews #review_form textarea { border: 1px solid var(--tt-border); border-radius: 10px; box-shadow: none; font-family: var(--tt-font); }
body.tt-ui .tt-reviews #review_form .submit { background: var(--tt-accent); border-radius: 10px; text-transform: none; letter-spacing: 0; font-weight: 700; }

/* Sản phẩm liên quan */
body.tt-ui .tt-related .related { margin: 0; padding: 0; }
body.tt-ui .tt-related .related h3, body.tt-ui .single-product .tt-related .related h3, body.tt-ui .tt-related .product-section-title {
	font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; text-align: left; padding: 0 0 12px; margin: 0; color: var(--tt-text); background: transparent; border: 0; width: auto;
}
body.tt-ui .tt-related .product-section-title.container-width { padding-left: 0; padding-right: 0; }

/* Thanh mua nhanh cố định (mobile) */
body.tt-ui .tt-sticky-buy {
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; background: #fff; border-top: 1px solid var(--tt-border);
	padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)); display: none; align-items: center; gap: 12px;
	box-shadow: 0 -6px 20px rgba(15, 23, 42, .08); transform: translateY(110%); transition: transform .2s ease;
}
body.tt-ui .tt-sticky-buy.is-visible { transform: none; }
body.tt-ui .tt-sticky-buy__price { display: flex; flex-direction: column; line-height: 1.2; min-width: 0; flex: 1; }
body.tt-ui .tt-sticky-buy__label { font-size: 11px; color: var(--tt-muted-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.tt-ui .tt-sticky-buy__amount { font-size: 18px; font-weight: 800; color: var(--tt-accent); }
body.tt-ui .tt-sticky-buy__amount .amount { color: inherit; font-weight: inherit; font-size: inherit; }
body.tt-ui .tt-sticky-buy__btn { min-height: 46px; padding: 0 20px; }
@media (max-width: 849px) { body.tt-ui .tt-sticky-buy { display: flex; } body.tt-ui.single-product { padding-bottom: 72px; } }

/* --------------------------------------------------------------------------
   Footer mới
   -------------------------------------------------------------------------- */
body.tt-ui .footer-wrapper { background: transparent; }
body.tt-ui .absolute-footer { display: none; }
body.tt-ui .tt-footer { background: #fff; border-top: 1px solid var(--tt-border); margin-top: 40px; font-size: 14px; color: var(--tt-text); }
body.tt-ui .tt-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 28px; padding-top: 36px; padding-bottom: 24px; }
body.tt-ui .tt-footer__logo { font-weight: 800; font-size: 20px; letter-spacing: .5px; color: var(--tt-accent); text-decoration: none; }
body.tt-ui .tt-footer__brand p { font-size: 13px; line-height: 1.6; color: var(--tt-muted); margin: 10px 0; }
body.tt-ui .tt-footer__mail { font-size: 13px; color: #334155; display: inline-flex; gap: 6px; align-items: center; text-decoration: none; }
body.tt-ui .tt-footer__social { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
body.tt-ui .tt-footer__social a { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: var(--tt-text); border: 1px solid var(--tt-border); border-radius: 10px; padding: 0 10px; min-height: 36px; text-decoration: none; }
body.tt-ui .tt-footer__social a:hover { border-color: var(--tt-accent); color: var(--tt-accent); }
body.tt-ui .tt-footer__col h4 { margin: 0 0 10px; font-size: 14px; font-weight: 800; color: var(--tt-text); text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui .tt-footer__col li { margin: 0; }
body.tt-ui .tt-footer__col a { color: var(--tt-muted); text-decoration: none; font-size: 14px; }
body.tt-ui .tt-footer__col a:hover { color: var(--tt-accent); }
body.tt-ui .tt-footer__bottom { border-top: 1px solid var(--tt-border-soft); }
body.tt-ui .tt-footer__bottom-inner { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding-top: 14px; padding-bottom: 14px; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-footer__copy h4 { font-size: 12px; font-weight: 700; margin: 0 0 2px; color: #334155; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-footer__copy p { margin: 0; }
body.tt-ui .tt-footer__copy a { color: var(--tt-muted); }
body.tt-ui .tt-footer__meta { display: flex; gap: 16px; flex-wrap: wrap; }
body.tt-ui .tt-footer__meta span { display: inline-flex; gap: 5px; align-items: center; }
@media (max-width: 849px) { body.tt-ui .tt-footer__grid { grid-template-columns: 1fr 1fr; gap: 20px; } }
@media (max-width: 520px) { body.tt-ui .tt-footer__grid { grid-template-columns: 1fr; } }


/* --------------------------------------------------------------------------
   Trang danh mục / cửa hàng
   -------------------------------------------------------------------------- */
body.tt-ui .tt-shop { padding: 16px 0 56px; }
body.tt-ui .tt-shop__head { display: flex; flex-wrap: wrap; gap: 16px 20px; align-items: center; justify-content: space-between; padding: 24px 28px; border-radius: 18px; margin-bottom: 20px; }
body.tt-ui .tt-shop__head-main { flex: 999 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui .tt-shop__title-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
body.tt-ui .tt-shop__title { margin: 0; font-size: 28px; font-weight: 800; letter-spacing: -.3px; text-transform: none; line-height: 1.2; }
body.tt-ui .tt-pill--accent-soft { background: var(--tt-accent-soft); color: var(--tt-accent); font-size: 12px; font-weight: 800; padding: 5px 11px; }
body.tt-ui .tt-shop__intro { margin: 0; font-size: 15px; line-height: 1.6; color: var(--tt-muted); max-width: 640px; }
body.tt-ui .tt-shop__promises { display: flex; gap: 10px; flex-wrap: wrap; font-size: 13px; color: #334155; }
body.tt-ui .tt-shop__promises span { display: inline-flex; align-items: center; gap: 6px; background: var(--tt-bg); border: 1px solid var(--tt-border); border-radius: 999px; padding: 8px 12px; }
body.tt-ui .tt-shop__promises svg { color: #16A34A; }
body.tt-ui .tt-shop__grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 24px; align-items: start; }
body.tt-ui .tt-shop__filters { display: flex; flex-direction: column; gap: 14px; }
body.tt-ui .tt-filter__toggle { display: none; }
body.tt-ui .tt-filter__panel { display: flex; flex-direction: column; gap: 14px; }
body.tt-ui .tt-filter { padding: 18px; display: flex; flex-direction: column; gap: 12px; margin: 0; }
body.tt-ui .tt-filter__head { display: flex; align-items: center; justify-content: space-between; font-size: 12px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); }
body.tt-ui .tt-filter__head a { font-size: 12px; font-weight: 700; color: var(--tt-blue); text-decoration: none; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-filter__back { font-size: 13px; font-weight: 700; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .tt-filter__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
body.tt-ui .tt-filter__list li { margin: 0; }
body.tt-ui .tt-filter__list a { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 36px; padding: 0 8px; border-radius: 8px; font-size: 14px; color: #334155; text-decoration: none; }
body.tt-ui .tt-filter__list a small { font-size: 12px; color: var(--tt-muted-3); }
body.tt-ui .tt-filter__list a:hover { background: var(--tt-bg); color: var(--tt-accent); }
body.tt-ui .tt-filter__list a.is-active { background: var(--tt-accent-soft); color: var(--tt-accent); font-weight: 700; }
body.tt-ui .tt-filter__list--rating a { justify-content: flex-start; }
body.tt-ui .tt-filter__price { display: flex; gap: 8px; align-items: flex-end; }
body.tt-ui .tt-filter__price label { flex: 1; display: flex; flex-direction: column; gap: 4px; font-size: 11px; color: var(--tt-muted-2); margin: 0; }
body.tt-ui .tt-filter__price input { font: inherit; font-size: 14px; color: var(--tt-text); border: 1px solid var(--tt-border); border-radius: 8px; padding: 0 10px; min-height: 40px; width: 100%; box-sizing: border-box; box-shadow: none; margin: 0; background: #fff; }
body.tt-ui .tt-filter__price > span { color: var(--tt-muted-3); padding-bottom: 12px; }
body.tt-ui .tt-filter__chips { display: flex; gap: 6px; flex-wrap: wrap; }
body.tt-ui .tt-filter__chips a { font-size: 12px; font-weight: 600; color: #334155; background: var(--tt-border-soft); border-radius: 999px; padding: 6px 10px; text-decoration: none; }
body.tt-ui .tt-filter__chips a:hover { background: var(--tt-accent-soft); color: var(--tt-accent); }
body.tt-ui .tt-filter .tt-btn--block { min-height: 40px; font-size: 13px; }
body.tt-ui .tt-shop__main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
body.tt-ui .tt-shop__toolbar { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; padding: 10px 14px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
body.tt-ui .tt-shop__count { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; color: var(--tt-muted); }
body.tt-ui .tt-shop__count .woocommerce-result-count { margin: 0; padding: 0; font-size: 13px; color: var(--tt-muted); float: none; }
body.tt-ui .tt-chip-filter { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: var(--tt-accent); background: var(--tt-accent-soft); border-radius: 999px; padding: 5px 10px; text-decoration: none; }
body.tt-ui .tt-shop__sort .woocommerce-ordering { margin: 0; float: none; }
body.tt-ui .tt-shop__sort select { font: inherit; font-size: 13px; font-weight: 600; color: var(--tt-text); border: 1px solid var(--tt-border); border-radius: 10px; padding: 0 32px 0 12px; min-height: 40px; background-color: #fff; box-shadow: none; margin: 0; }
body.tt-ui .tt-shop .products.row { margin-left: -7px; margin-right: -7px; }
body.tt-ui .tt-shop .products.row > .col { max-width: 33.3333%; flex-basis: 33.3333%; padding: 0 7px 14px; }
body.tt-ui .tt-shop__empty { text-align: center; }
body.tt-ui .tt-shop .woocommerce-pagination { margin: 4px 0 0; }
body.tt-ui .tt-shop .woocommerce-pagination .page-numbers { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
body.tt-ui .tt-shop .woocommerce-pagination .page-numbers li { margin: 0; }
body.tt-ui .tt-shop .woocommerce-pagination a.page-numbers, body.tt-ui .tt-shop .woocommerce-pagination span.page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 10px; border-radius: 10px; border: 1px solid var(--tt-border); background: #fff; color: var(--tt-text); font-size: 14px; font-weight: 700; text-decoration: none; }
body.tt-ui .tt-shop .woocommerce-pagination a.page-numbers:hover { border-color: var(--tt-accent); color: var(--tt-accent); }
body.tt-ui .tt-shop .woocommerce-pagination span.page-numbers.current { background: var(--tt-accent); border-color: var(--tt-accent); color: #fff; }
body.tt-ui .tt-shop .woocommerce-pagination span.page-numbers.dots { border: 0; background: transparent; color: var(--tt-muted-3); min-width: auto; }
body.tt-ui .tt-shop__desc { margin-top: 24px; display: flex; flex-direction: column; gap: 20px; }
body.tt-ui .tt-shop__desc .section { padding: 24px 28px !important; margin: 0; background: #fff !important; border: 1px solid var(--tt-border); border-radius: 18px; }
body.tt-ui .tt-shop__desc .section-bg { display: none; }
body.tt-ui .tt-shop__desc section.khogiaodien { display: none; }
body.tt-ui .tt-shop__desc .section:has(.searchform), body.tt-ui .tt-shop__desc .section:has(.search-form) { display: none; }
body.tt-ui .tt-shop__desc h2 { font-size: 20px; font-weight: 800; text-align: left !important; margin: 0 0 12px; }
body.tt-ui .tt-shop__desc p { font-size: 15px; line-height: 1.65; color: #334155; }
body.tt-ui .tt-shop__desc .featured-box { background: var(--tt-bg); border: 1px solid var(--tt-border); border-radius: 14px; padding: 14px; height: 100%; box-sizing: border-box; }
body.tt-ui .tt-shop__desc .featured-box h3 { font-size: 14px; font-weight: 700; margin: 6px 0 4px; }
body.tt-ui .tt-shop__desc .featured-box p { font-size: 13px; color: var(--tt-muted-2); margin: 0; line-height: 1.5; }
body.tt-ui .tt-shop__desc .featured-box .icon-box-img { width: 48px !important; }
body.tt-ui .tt-shop__desc .col { padding-bottom: 14px; }
body.tt-ui .tt-shop__desc .section.uu-dai-qua-tang { background: #FFF7FA !important; border-color: var(--tt-accent-soft); }
@media (max-width: 1023px) { body.tt-ui .tt-shop .products.row > .col { max-width: 50%; flex-basis: 50%; } }
@media (max-width: 849px) {
	body.tt-ui .tt-shop__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	body.tt-ui .tt-filter__toggle { display: inline-flex; align-self: flex-start; }
	body.tt-ui .tt-filter__panel { display: none; }
	body.tt-ui .tt-filter__panel.is-open { display: flex; }
	body.tt-ui .tt-shop__head { padding: 16px; margin-bottom: 14px; }
	body.tt-ui .tt-shop__title { font-size: 22px; }
	body.tt-ui .tt-shop__desc .section { padding: 16px !important; }
	body.tt-ui .tt-shop__desc h2 { font-size: 17px; }
}

/* --------------------------------------------------------------------------
   Giỏ hàng & thanh toán — tiêu đề, các bước
   -------------------------------------------------------------------------- */
body.tt-ui.woocommerce-cart .entry-header, body.tt-ui.woocommerce-checkout .entry-header { display: none; }
body.tt-ui.woocommerce-cart #content, body.tt-ui.woocommerce-checkout #content { padding-top: 16px; }
body.tt-ui .tt-cart-head, body.tt-ui .tt-checkout-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 18px; }
body.tt-ui .tt-cart-head__title, body.tt-ui .tt-checkout-head__title { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
body.tt-ui .tt-cart-head h1, body.tt-ui .tt-checkout-head h1 { margin: 0; font-size: 26px; font-weight: 800; text-transform: none; letter-spacing: -.3px; }
body.tt-ui .tt-cart-head__title span { font-size: 14px; color: var(--tt-muted-2); }
body.tt-ui .tt-checkout-head__title a { font-size: 13px; color: var(--tt-muted-2); text-decoration: none; }
body.tt-ui .tt-checkout-head__secure { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--tt-green); }
body.tt-ui .tt-steps { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; flex-wrap: wrap; }
body.tt-ui .tt-steps__item { display: flex; align-items: center; gap: 8px; color: var(--tt-muted-3); margin: 0; }
body.tt-ui .tt-steps__item.is-current { color: var(--tt-text); }
body.tt-ui .tt-steps__item.is-done { color: var(--tt-green); }
body.tt-ui .tt-steps__num { width: 26px; height: 26px; border-radius: 999px; border: 1.5px solid var(--tt-border); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; box-sizing: border-box; }
body.tt-ui .tt-steps__item.is-current .tt-steps__num { background: var(--tt-accent); border-color: var(--tt-accent); color: #fff; }
body.tt-ui .tt-steps__item.is-done .tt-steps__num { background: var(--tt-green-bg); border-color: var(--tt-green-bg); color: var(--tt-green); }
body.tt-ui .tt-steps__line { width: 36px; height: 2px; background: var(--tt-border); margin: 0; }
body.tt-ui .tt-steps__line.is-done { background: #86EFAC; }
body.tt-ui .row-divided > .col + .col { border-left: 0; }

/* Giỏ hàng */
body.tt-ui .woocommerce-cart-form .cart-wrapper { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; overflow: hidden; }
body.tt-ui table.shop_table.cart { border: 0; margin: 0; }
body.tt-ui table.shop_table.cart thead { display: none; }
body.tt-ui table.shop_table.cart td, body.tt-ui table.shop_table.cart th { border: 0; border-bottom: 1px solid var(--tt-border-soft); padding: 16px 12px; vertical-align: middle; font-size: 14px; }
body.tt-ui table.shop_table.cart td.product-remove { width: 44px; padding-left: 16px; }
body.tt-ui table.shop_table.cart a.remove { width: 28px; height: 28px; line-height: 26px; border-radius: 8px; color: var(--tt-muted-2) !important; border: 1px solid var(--tt-border); font-size: 18px; background: #fff; }
body.tt-ui table.shop_table.cart a.remove:hover { background: var(--tt-accent-soft); color: var(--tt-accent) !important; }
body.tt-ui table.shop_table.cart td.product-thumbnail { width: 96px; }
body.tt-ui table.shop_table.cart td.product-thumbnail img { width: 80px; height: 60px; object-fit: cover; border-radius: 10px; max-width: none; }
body.tt-ui table.shop_table.cart td.product-name a { font-size: 15px; font-weight: 700; color: var(--tt-text); }
body.tt-ui table.shop_table.cart td.product-name .variation, body.tt-ui table.shop_table.cart td.product-name dl { margin: 6px 0 0; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui table.shop_table.cart td.product-name dl dt, body.tt-ui table.shop_table.cart td.product-name dl dd { display: inline; font-weight: 600; margin: 0; padding: 0; }
body.tt-ui table.shop_table.cart td.product-name dl dd p { display: inline; margin: 0; }
body.tt-ui table.shop_table.cart td.product-price, body.tt-ui table.shop_table.cart td.product-subtotal { font-weight: 800; color: var(--tt-text); white-space: nowrap; }
body.tt-ui table.shop_table.cart td.product-subtotal { color: var(--tt-accent); font-size: 16px; }
body.tt-ui table.shop_table.cart td.product-quantity .quantity { display: none; }
body.tt-ui table.shop_table.cart td.actions { background: #FAFBFD; padding: 12px 16px; border-bottom: 0; }
body.tt-ui table.shop_table.cart td.actions .continue-shopping a { border: 0; background: transparent; color: var(--tt-blue); font-weight: 700; text-transform: none; letter-spacing: 0; padding: 0; font-size: 13px; margin: 0; box-shadow: none; }
body.tt-ui table.shop_table.cart td.actions button[name="update_cart"] { display: none; }
body.tt-ui .tt-tier { margin-top: 16px; display: flex; flex-direction: column; gap: 14px; padding: 18px 20px; }
body.tt-ui .tt-tier__row { display: flex; gap: 12px; align-items: flex-start; }
body.tt-ui .tt-tier__row p { margin: 0; font-size: 14px; line-height: 1.55; color: #334155; }
body.tt-ui .tt-tier__row strong { color: var(--tt-text); }
body.tt-ui .tt-accent { color: var(--tt-accent) !important; }
body.tt-ui .tt-tier__bars { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-tier__bars li { display: flex; flex-direction: column; gap: 6px; margin: 0; }
body.tt-ui .tt-tier__bars li span { height: 6px; border-radius: 999px; background: var(--tt-border); display: block; }
body.tt-ui .tt-tier__bars li.is-on span { background: var(--tt-accent); }
body.tt-ui .tt-tier__bars em { font-style: normal; }
body.tt-ui .tt-tier__bars strong { color: var(--tt-text); }
body.tt-ui .cross-sells { margin-top: 24px; }
body.tt-ui .cross-sells > h2, body.tt-ui .cross-sells .product-section-title { font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 12px; text-align: left; }
body.tt-ui .cart-collaterals .cart-sidebar { background: transparent; padding: 0; }
body.tt-ui .cart_totals { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 20px; }
body.tt-ui .cart_totals h2 { font-size: 16px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 12px; }
body.tt-ui .cart_totals table.shop_table { border: 0; margin: 0 0 14px; }
body.tt-ui .cart_totals th, body.tt-ui .cart_totals td { border: 0; padding: 8px 0; font-size: 14px; color: var(--tt-muted); font-weight: 500; background: transparent; }
body.tt-ui .cart_totals td { text-align: right; color: var(--tt-text); font-weight: 600; }
body.tt-ui .cart_totals tr.order-total th, body.tt-ui .cart_totals tr.order-total td { border-top: 1px solid var(--tt-border); padding-top: 12px; font-size: 15px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .cart_totals tr.order-total td .amount { font-size: 24px; color: var(--tt-accent); }
body.tt-ui .cart_totals tr.cart-discount td, body.tt-ui .cart_totals tr.fee td { color: var(--tt-green); }
body.tt-ui .wc-proceed-to-checkout { padding: 0; margin: 0; }
body.tt-ui .wc-proceed-to-checkout a.checkout-button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 0; border-radius: 12px; background: var(--tt-accent) !important; color: #fff !important; font-size: 15px; font-weight: 800; text-transform: none; letter-spacing: 0; box-shadow: none; border: 0; }
body.tt-ui .ux-cart-coupon { margin-top: 14px !important; background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 16px 20px; }
body.tt-ui .ux-cart-coupon .widget-title { font-size: 13px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 8px; display: flex; align-items: center; gap: 6px; }
body.tt-ui .ux-cart-coupon .coupon { display: flex; flex-wrap: wrap; gap: 8px; }
body.tt-ui .ux-cart-coupon input.input-text { flex: 1 1 160px; min-height: 44px; border: 1px solid var(--tt-border); border-radius: 10px; box-shadow: none; margin: 0; font-family: var(--tt-font); }
body.tt-ui .ux-cart-coupon button.button { margin: 0; min-height: 44px; border-radius: 10px; background: #fff; color: var(--tt-text); border: 1px solid var(--tt-border); text-transform: none; letter-spacing: 0; font-weight: 700; width: auto; padding: 0 16px; box-shadow: none; }
body.tt-ui .tt-upsell { margin-top: 14px; background: var(--tt-text); color: #fff; border-radius: 16px; padding: 18px 20px; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui .tt-upsell__eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; color: #FBCFE8; }
body.tt-ui .tt-upsell__title { font-size: 16px; font-weight: 800; line-height: 1.35; }
body.tt-ui .tt-upsell__title .amount { color: #fff; font-weight: inherit; font-size: inherit; }
body.tt-ui .tt-upsell__text { font-size: 13px; line-height: 1.5; color: #CBD5E1; }
body.tt-ui .tt-upsell a { color: #fff; font-size: 13px; font-weight: 700; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }

/* Thanh toán */
body.tt-ui .woocommerce-form-login-toggle .woocommerce-info, body.tt-ui .woocommerce-form-coupon-toggle .woocommerce-info { background: #fff !important; color: var(--tt-muted) !important; border: 1px solid var(--tt-border); border-radius: 12px; padding: 12px 16px !important; margin: 0 0 12px; font-size: 13px; }
body.tt-ui .woocommerce-form-login-toggle .woocommerce-info a, body.tt-ui .woocommerce-form-coupon-toggle .woocommerce-info a { color: var(--tt-blue); font-weight: 700; }
body.tt-ui .woocommerce-info .message-container { padding: 0; text-align: left !important; }
body.tt-ui form.woocommerce-form-login.login, body.tt-ui form.checkout_coupon { background: #fff; border: 1px solid var(--tt-border) !important; border-radius: 16px; padding: 20px !important; margin: 0 0 14px; }
body.tt-ui form.checkout.woocommerce-checkout > .row { margin-left: -12px; margin-right: -12px; }
body.tt-ui form.checkout.woocommerce-checkout > .row > .col { padding-left: 12px; padding-right: 12px; }
body.tt-ui .woocommerce-billing-fields, body.tt-ui .woocommerce-additional-fields, body.tt-ui .woocommerce-account-fields { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 22px 24px; margin: 0 0 16px; }
body.tt-ui .woocommerce-billing-fields h3, body.tt-ui .woocommerce-additional-fields h3, body.tt-ui #order_review_heading { font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 12px; }
body.tt-ui form.checkout label { font-size: 13px; font-weight: 600; color: #334155; }
body.tt-ui form.checkout .form-row { margin-bottom: 12px; }
body.tt-ui form.checkout input.input-text, body.tt-ui form.checkout textarea.input-text, body.tt-ui form.checkout select { border: 1px solid var(--tt-border); border-radius: 10px; box-shadow: none; min-height: 46px; font-family: var(--tt-font); font-size: 14px; padding: 0 14px; background: #fff; }
body.tt-ui form.checkout textarea.input-text { min-height: 90px; padding: 12px 14px; }
body.tt-ui form.checkout .required { color: var(--tt-accent); }
body.tt-ui #order_review { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 20px; }
body.tt-ui .woocommerce-checkout-review-order-table { border: 0; margin: 0 0 14px; }
body.tt-ui .woocommerce-checkout-review-order-table thead { display: none; }
body.tt-ui .woocommerce-checkout-review-order-table td, body.tt-ui .woocommerce-checkout-review-order-table th { border: 0; border-bottom: 1px solid var(--tt-border-soft); padding: 10px 0; font-size: 14px; background: transparent; }
body.tt-ui .woocommerce-checkout-review-order-table td.product-name { font-weight: 700; color: var(--tt-text); }
body.tt-ui .woocommerce-checkout-review-order-table td.product-name dl { font-size: 12px; color: var(--tt-muted-2); margin: 4px 0 0; }
body.tt-ui .woocommerce-checkout-review-order-table .product-quantity { font-weight: 500; color: var(--tt-muted-2); }
body.tt-ui .woocommerce-checkout-review-order-table td.product-total { text-align: right; font-weight: 800; white-space: nowrap; }
body.tt-ui .woocommerce-checkout-review-order-table tfoot th { color: var(--tt-muted); font-weight: 500; text-align: left; }
body.tt-ui .woocommerce-checkout-review-order-table tfoot td { text-align: right; font-weight: 700; }
body.tt-ui .woocommerce-checkout-review-order-table tr.cart-discount td { color: var(--tt-green); }
body.tt-ui .woocommerce-checkout-review-order-table tr.order-total th, body.tt-ui .woocommerce-checkout-review-order-table tr.order-total td { border-bottom: 0; padding-top: 12px; font-size: 15px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .woocommerce-checkout-review-order-table tr.order-total .amount { font-size: 22px; color: var(--tt-accent); }
body.tt-ui #payment { background: transparent; border-radius: 0; }
body.tt-ui #payment ul.payment_methods { border: 0; padding: 0; margin: 0 0 14px; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui #payment ul.payment_methods li { list-style: none; margin: 0; border: 1px solid var(--tt-border); border-radius: 12px; padding: 12px 14px; }
body.tt-ui #payment ul.payment_methods li.wc_payment_method > label { font-size: 14px; font-weight: 700; display: inline-flex; align-items: center; gap: 8px; margin: 0; }
body.tt-ui #payment ul.payment_methods li.wc_payment_method input[type="radio"] { accent-color: var(--tt-accent); width: 18px; height: 18px; margin: 0; }
body.tt-ui #payment .payment_box { background: var(--tt-bg) !important; border-radius: 10px; padding: 10px 12px; font-size: 13px; color: var(--tt-muted); margin: 8px 0 0; }
body.tt-ui #payment .payment_box::before { display: none; }
body.tt-ui #payment ul.payment_methods li .woocommerce-info { background: var(--tt-amber-bg) !important; color: var(--tt-amber-text) !important; border: 1px solid var(--tt-amber-border); border-radius: 10px; padding: 10px 12px !important; margin: 0; font-size: 13px; }
body.tt-ui .woocommerce-terms-and-conditions-wrapper { margin: 0 0 14px; }
body.tt-ui .woocommerce-terms-and-conditions { max-height: 220px; overflow: auto; background: var(--tt-bg); border: 1px solid var(--tt-border); border-radius: 12px; padding: 14px; font-size: 13px; margin-bottom: 10px; }
body.tt-ui .woocommerce-terms-and-conditions .section { padding: 0 !important; }
body.tt-ui .woocommerce-terms-and-conditions .section-bg { display: none; }
body.tt-ui .woocommerce-terms-and-conditions h1, body.tt-ui .woocommerce-terms-and-conditions h2 { font-size: 15px; margin: 10px 0 6px; }
body.tt-ui .woocommerce-terms-and-conditions-checkbox-text, body.tt-ui .validate-terms label { font-size: 13px; }
body.tt-ui #place_order { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 54px; margin: 0; border-radius: 12px; background: var(--tt-accent) !important; color: #fff !important; font-size: 16px; font-weight: 800; text-transform: none; letter-spacing: 0; box-shadow: none; border: 0; }
body.tt-ui .tt-checkout-trust { list-style: none; margin: 14px 0 0; padding: 16px 20px; background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; display: flex; flex-direction: column; gap: 10px; font-size: 13px; color: #334155; }
body.tt-ui .tt-checkout-trust li { display: flex; gap: 10px; align-items: center; margin: 0; }
body.tt-ui .tt-checkout-trust .tt-stat__icon { width: 28px; height: 28px; border-radius: 8px; }
body.tt-ui .tt-checkout-reviews { margin-top: 14px; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; }
body.tt-ui .tt-checkout-reviews h2 { margin: 0; font-size: 15px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-review { display: flex; flex-direction: column; gap: 6px; padding: 12px; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 12px; }
body.tt-ui .tt-review__head { display: flex; align-items: center; gap: 10px; }
body.tt-ui .tt-review__avatar { width: 32px; height: 32px; border-radius: 999px; background: #DBEAFE; color: var(--tt-blue); font-size: 11px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
body.tt-ui .tt-review__who { display: flex; flex-direction: column; min-width: 0; flex: 1; }
body.tt-ui .tt-review__name { font-size: 13px; font-weight: 700; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
body.tt-ui .tt-review__meta { font-size: 11px; color: var(--tt-muted-2); }
body.tt-ui .tt-review p { margin: 0; font-size: 13px; line-height: 1.5; color: #334155; }
body.tt-ui .tt-checkout-reviews .tt-stars { gap: 1px; }
@media (max-width: 849px) {
	body.tt-ui.woocommerce-cart, body.tt-ui.woocommerce-checkout { padding-bottom: 72px; }
	body.tt-ui table.shop_table.cart td, body.tt-ui table.shop_table.cart th { padding: 12px 10px; }
	body.tt-ui .tt-tier__bars { font-size: 11px; gap: 6px; }
}

/* --------------------------------------------------------------------------
   Nút bổ sung, pill, eyebrow dùng chung (giai đoạn 4)
   -------------------------------------------------------------------------- */
body.tt-ui .tt-btn--outline { background: #fff; color: var(--tt-accent) !important; border: 1.5px solid var(--tt-accent); }
body.tt-ui .tt-btn--outline:hover { background: var(--tt-accent-soft); }
body.tt-ui .tt-btn--dark { background: var(--tt-text); color: #fff !important; border-color: var(--tt-text); }
body.tt-ui .tt-btn--dark:hover { background: #1E293B; }
body.tt-ui .tt-btn--light { background: #fff; color: var(--tt-text) !important; border-color: #fff; }
body.tt-ui .tt-btn--light:hover { background: #F1F5F9; }
body.tt-ui .tt-btn--outline-light { background: transparent; color: #fff !important; border: 1px solid rgba(255, 255, 255, .35); }
body.tt-ui .tt-btn--outline-light:hover { border-color: #fff; }
body.tt-ui .tt-pill--amber { background: #FEF3C7; color: #B45309; }
body.tt-ui .tt-pill--muted { background: var(--tt-border-soft); color: var(--tt-muted-2); }
body.tt-ui .tt-card__eyebrow { display: block; font-size: 12px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); margin-bottom: 10px; }
body.tt-ui .tt-upsell__eyebrow { display: block; }

/* --------------------------------------------------------------------------
   Tài khoản (WooCommerce My Account + YITH Customize My Account Page)
   -------------------------------------------------------------------------- */
body.tt-ui.woocommerce-account .entry-header { display: none; }
body.tt-ui.woocommerce-account #content { padding-top: 16px; }
body.tt-ui .yith-wcmap { display: grid !important; grid-template-columns: 260px minmax(0, 1fr); grid-template-rows: auto auto 1fr; gap: 0 24px; align-items: start; float: none; width: auto; }
body.tt-ui .yith-wcmap > .user-profile { grid-column: 1; grid-row: 1; }
body.tt-ui .yith-wcmap > ul.myaccount-menu { grid-column: 1; grid-row: 2; }
body.tt-ui .yith-wcmap > .woocommerce-MyAccount-content { grid-column: 2; grid-row: 1 / span 3; }
body.tt-ui .yith-wcmap ul.myaccount-menu li a { width: auto !important; min-width: 0; height: auto !important; }
body.tt-ui .yith-wcmap .user-profile .user-avatar { display: none !important; }
body.tt-ui .yith-wcmap.layout-modern ul.myaccount-menu li, body.tt-ui .yith-wcmap ul.myaccount-menu li { background: transparent !important; box-shadow: none !important; border: 0 !important; margin: 0 !important; padding: 0 !important; width: auto !important; }
body.tt-ui .yith-wcmap.layout-modern ul.myaccount-menu li a, body.tt-ui .yith-wcmap ul.myaccount-menu li a { background: transparent !important; color: #334155 !important; box-shadow: none !important; border: 0 !important; border-radius: 10px !important; padding: 0 12px !important; line-height: 1.3; }
body.tt-ui .yith-wcmap ul.myaccount-menu li a:hover { background: var(--tt-bg) !important; color: var(--tt-accent) !important; }
body.tt-ui .yith-wcmap ul.myaccount-menu li.active a { background: var(--tt-accent-soft) !important; color: var(--tt-accent) !important; }
body.tt-ui .yith-wcmap ul.myaccount-menu li a .item-label { color: inherit !important; font-weight: inherit; }
body.tt-ui .yith-wcmap ul.myaccount-menu .item-label { display: inline !important; visibility: visible !important; opacity: 1 !important; width: auto !important; position: static !important; }
body.tt-ui .tt-dash__list-head a { white-space: nowrap; }
body.tt-ui .yith-wcmap .user-profile { background: #fff; border: 1px solid var(--tt-border); border-bottom: 0; border-radius: 16px 16px 0 0; padding: 16px; display: flex; align-items: center; gap: 12px; margin: 0; float: none; width: auto; }
body.tt-ui .yith-wcmap .user-profile .user-avatar:empty { display: none; }
body.tt-ui .yith-wcmap .user-profile .user-avatar img { width: 44px; height: 44px; border-radius: 999px; object-fit: cover; }
body.tt-ui .yith-wcmap .user-profile::before { content: attr(data-initials); }
body.tt-ui .yith-wcmap .user-info { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.tt-ui .yith-wcmap .user-info .username { font-size: 14px; font-weight: 800; color: var(--tt-text); }
body.tt-ui .yith-wcmap .user-info .user-email { font-size: 12px; color: var(--tt-muted-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.tt-ui .yith-wcmap .user-info .logout a { font-size: 12px; font-weight: 700; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .yith-wcmap ul.myaccount-menu { list-style: none; margin: 0 0 14px; padding: 10px; background: #fff; border: 1px solid var(--tt-border); border-radius: 0 0 16px 16px; display: flex; flex-direction: column; gap: 2px; float: none; width: auto; }
body.tt-ui .yith-wcmap ul.myaccount-menu li { margin: 0; border: 0; padding: 0; background: transparent; }
body.tt-ui .yith-wcmap ul.myaccount-menu li a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 12px; border-radius: 10px; font-size: 14px; font-weight: 600; color: #334155; text-decoration: none; background: transparent; border: 0; box-shadow: none; }
body.tt-ui .yith-wcmap ul.myaccount-menu li a:hover { background: var(--tt-bg); color: var(--tt-accent); }
body.tt-ui .yith-wcmap ul.myaccount-menu li.active a { background: var(--tt-accent-soft); color: var(--tt-accent); font-weight: 700; }
body.tt-ui .yith-wcmap ul.myaccount-menu .item-icon { width: 18px; height: 18px; display: inline-block; flex: 0 0 auto; background-color: currentColor; -webkit-mask: var(--tt-mi) center / 18px no-repeat; mask: var(--tt-mi) center / 18px no-repeat; }
body.tt-ui .yith-wcmap ul.myaccount-menu .item-icon i { display: none; }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-dashboard .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E"); }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-orders .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpolyline points='3.27 6.96 12 12.01 20.73 6.96'/%3E%3Cline x1='12' y1='22.08' x2='12' y2='12'/%3E%3C/svg%3E"); }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-downloads .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E"); }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-yith-membership .item-icon, body.tt-ui .yith-wcmap ul.myaccount-menu a[class*="membership"] .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/%3E%3C/svg%3E"); }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-edit-account .item-icon, body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-edit-address .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E"); }
body.tt-ui .yith-wcmap ul.myaccount-menu a.yith-customer-logout .item-icon { --tt-mi: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E"); }
body.tt-ui .woocommerce-MyAccount-content { min-width: 0; float: none; width: auto; }
body.tt-ui .woocommerce-MyAccount-navigation { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 10px; }
body.tt-ui .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
body.tt-ui .woocommerce-MyAccount-navigation li { margin: 0; border: 0; }
body.tt-ui .woocommerce-MyAccount-navigation li a { display: flex; align-items: center; min-height: 44px; padding: 0 12px; border-radius: 10px; font-size: 14px; font-weight: 600; color: #334155; text-decoration: none; }
body.tt-ui .woocommerce-MyAccount-navigation li.is-active a { background: var(--tt-accent-soft); color: var(--tt-accent); font-weight: 700; }
/* Bảng điều khiển */
body.tt-ui .tt-dash { display: flex; flex-direction: column; gap: 16px; }
body.tt-ui .tt-dash__hello h2 { margin: 0 0 4px; font-size: 24px; font-weight: 800; text-transform: none; letter-spacing: -.3px; }
body.tt-ui .tt-dash__hello p { margin: 0; font-size: 14px; color: var(--tt-muted-2); }
body.tt-ui .tt-dash__member { background: var(--tt-text); color: #fff; border-radius: 18px; padding: 22px 24px; display: flex; flex-wrap: wrap; gap: 18px; align-items: center; justify-content: space-between; }
body.tt-ui .tt-dash__member-main { display: flex; flex-direction: column; gap: 8px; flex: 1 1 300px; min-width: 0; }
body.tt-ui .tt-dash__member-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
body.tt-ui .tt-dash__eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .8px; text-transform: uppercase; color: #FBCFE8; }
body.tt-ui .tt-dash__member-name { font-size: 20px; font-weight: 800; letter-spacing: -.2px; }
body.tt-ui .tt-dash__member-name .amount { color: #fff; font-weight: inherit; font-size: inherit; }
body.tt-ui .tt-dash__member-text { font-size: 13px; color: #CBD5E1; line-height: 1.5; }
body.tt-ui .tt-dash__facts { margin: 0; display: flex; gap: 22px; flex-wrap: wrap; font-size: 13px; color: #CBD5E1; }
body.tt-ui .tt-dash__facts div { display: flex; flex-direction: column; gap: 2px; }
body.tt-ui .tt-dash__facts dt { font-size: 11px; text-transform: uppercase; letter-spacing: .5px; color: var(--tt-muted-3); font-weight: 600; }
body.tt-ui .tt-dash__facts dd { margin: 0; font-weight: 700; color: #fff; }
body.tt-ui .tt-dash__member-actions { display: flex; gap: 10px; flex-wrap: wrap; }
body.tt-ui .tt-dash__stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
body.tt-ui .tt-dash__stats a { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; padding: 14px 16px; display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--tt-text); }
body.tt-ui .tt-dash__stats a > span:last-child { display: flex; flex-direction: column; }
body.tt-ui .tt-dash__stats strong { font-size: 20px; font-weight: 800; line-height: 1.1; }
body.tt-ui .tt-dash__stats small { font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-dash__list { padding: 0; overflow: hidden; }
body.tt-ui .tt-dash__list-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--tt-border-soft); }
body.tt-ui .tt-dash__list-head h3 { margin: 0; font-size: 16px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-dash__list-head a { font-size: 13px; font-weight: 700; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .tt-dash__list ul { list-style: none; margin: 0; padding: 0; }
body.tt-ui .tt-dash__list > ul > li { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 18px; border-bottom: 1px solid var(--tt-border-soft); margin: 0; }
body.tt-ui .tt-dash__list > ul > li:last-child { border-bottom: 0; }
body.tt-ui .tt-dash__thumb img { width: 52px; height: 40px; object-fit: cover; border-radius: 8px; display: block; }
body.tt-ui .tt-dash__item { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
body.tt-ui .tt-dash__item > a { font-size: 14px; font-weight: 700; color: var(--tt-text); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.tt-ui .tt-dl-meta { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-dl-request { font-size: 12px; font-weight: 700; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .tt-dash__actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
body.tt-ui .tt-dash__actions .tt-btn { min-height: 40px; font-size: 13px; padding: 0 12px; }
body.tt-ui .tt-dash__empty { margin: 0; padding: 16px 18px; font-size: 14px; color: var(--tt-muted); }
body.tt-ui .tt-dash__orders > li { grid-template-columns: 90px minmax(0, 1fr) 90px 110px auto; }
body.tt-ui .tt-dash__order-id { font-weight: 800; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .tt-dash__order-items { font-size: 13px; color: #334155; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.tt-ui .tt-dash__order-date { font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-dash__order-total { font-weight: 800; text-align: right; }
body.tt-ui .tt-dash__support { display: flex; flex-direction: column; gap: 10px; padding: 16px 18px; }
/* Bảng tải xuống / đơn hàng của WooCommerce */
body.tt-ui .woocommerce-MyAccount-content table.shop_table { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; overflow: hidden; margin: 0; border-collapse: separate; border-spacing: 0; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table th, body.tt-ui .woocommerce-MyAccount-content table.shop_table td { border: 0; border-bottom: 1px solid var(--tt-border-soft); padding: 12px 14px; font-size: 14px; vertical-align: middle; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table thead th { font-size: 11px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); background: #F8FAFC; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table tbody tr:last-child td { border-bottom: 0; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table a { color: var(--tt-text); font-weight: 700; text-decoration: none; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table .button { min-height: 38px; padding: 0 12px; font-size: 13px; border-radius: 10px; margin: 0; text-transform: none; letter-spacing: 0; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table a.woocommerce-MyAccount-downloads-file.button { background: var(--tt-accent) !important; color: #fff !important; border: 0; }
body.tt-ui .woocommerce-MyAccount-content table.shop_table .woocommerce-orders-table__cell-order-actions .button { background: #fff; color: var(--tt-text); border: 1px solid var(--tt-border); }
body.tt-ui .woocommerce-MyAccount-content h2, body.tt-ui .woocommerce-MyAccount-content h3 { font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .woocommerce-MyAccount-content form .form-row input.input-text, body.tt-ui .woocommerce-MyAccount-content form select { border: 1px solid var(--tt-border); border-radius: 10px; min-height: 46px; box-shadow: none; font-family: var(--tt-font); }
body.tt-ui .woocommerce-MyAccount-content form button.button { background: var(--tt-accent) !important; color: #fff !important; border-radius: 10px; text-transform: none; letter-spacing: 0; font-weight: 700; min-height: 46px; }
body.tt-ui .woocommerce-MyAccount-content fieldset { border: 1px solid var(--tt-border); border-radius: 12px; padding: 14px; }
body.tt-ui .woocommerce-MyAccount-content .woocommerce-pagination, body.tt-ui .woocommerce-MyAccount-content .woocommerce-pagination--without-numbers { margin-top: 14px; }
/* Đăng nhập / đăng ký */
body.tt-ui.woocommerce-account .woocommerce-form-login, body.tt-ui.woocommerce-account .woocommerce-form-register, body.tt-ui .account-login-inner { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 24px !important; }
body.tt-ui .account-login-inner .woocommerce-form-login, body.tt-ui .account-login-inner .woocommerce-form-register { border: 0; padding: 0 !important; }
body.tt-ui.woocommerce-account .woocommerce-form-login input.input-text, body.tt-ui.woocommerce-account .woocommerce-form-register input.input-text { border: 1px solid var(--tt-border); border-radius: 10px; min-height: 46px; box-shadow: none; font-family: var(--tt-font); }
body.tt-ui.woocommerce-account .woocommerce-form-login button.button, body.tt-ui.woocommerce-account .woocommerce-form-register button.button { background: var(--tt-accent) !important; color: #fff !important; border-radius: 10px; text-transform: none; letter-spacing: 0; font-weight: 700; min-height: 46px; width: 100%; }
@media (max-width: 849px) {
	body.tt-ui .yith-wcmap { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; gap: 12px 0; }
	body.tt-ui .yith-wcmap > .woocommerce-MyAccount-content { grid-column: 1; grid-row: auto; }
	body.tt-ui .yith-wcmap .user-profile { border-radius: 16px; border-bottom: 1px solid var(--tt-border); }
	body.tt-ui .yith-wcmap ul.myaccount-menu, body.tt-ui .yith-wcmap.layout-modern ul.myaccount-menu { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; overflow-x: auto; padding: 6px; gap: 4px; margin: 0 -16px 4px; width: calc(100% + 32px) !important; border-left: 0; border-right: 0; border-radius: 0; -webkit-overflow-scrolling: touch; }
	body.tt-ui .yith-wcmap ul.myaccount-menu li { flex: 0 0 auto !important; display: block !important; }
	body.tt-ui .yith-wcmap ul.myaccount-menu li a { white-space: nowrap; min-height: 40px; border-radius: 999px !important; font-size: 13px; }
	body.tt-ui .tt-dash__list > ul > li { grid-template-columns: 1fr; gap: 8px; }
	body.tt-ui .tt-dash__thumb { display: none; }
	body.tt-ui .tt-dash__actions { justify-content: flex-start; }
	body.tt-ui .tt-dash__actions .tt-btn { flex: 1 1 auto; }
	body.tt-ui .tt-dash__orders > li { grid-template-columns: 1fr 1fr; }
	body.tt-ui .tt-dash__order-items { grid-column: 1 / -1; white-space: normal; }
	body.tt-ui .tt-dash__order-total { text-align: left; }
	body.tt-ui .tt-dash__member { padding: 18px; }
}

/* --------------------------------------------------------------------------
   Bài viết blog
   -------------------------------------------------------------------------- */
body.tt-ui .tt-post { padding: 16px 0 56px; }
body.tt-ui.single-post #content.blog-single { padding: 0; }
body.tt-ui .tt-post__grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; grid-template-areas: "head aside" "body aside"; gap: 20px 28px; align-items: start; }
body.tt-ui .tt-post__head { grid-area: head; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
body.tt-ui .tt-post__aside { grid-area: aside; display: flex; flex-direction: column; gap: 14px; position: sticky; top: 90px; }
body.tt-ui .tt-post__body { grid-area: body; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
body.tt-ui .tt-post__head > .tt-pill { align-self: flex-start; }
body.tt-ui .tt-post__title { margin: 0; font-size: 34px; line-height: 1.25; font-weight: 800; letter-spacing: -.5px; max-width: 780px; }
body.tt-ui .tt-post__lead { margin: 0; font-size: 17px; line-height: 1.6; color: var(--tt-muted); max-width: 780px; }
body.tt-ui .tt-post__metarow { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
body.tt-ui .tt-post__meta { display: flex; align-items: center; gap: 12px; font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-post__meta-text { display: flex; flex-direction: column; gap: 2px; }
body.tt-ui .tt-post__meta-text strong { font-size: 14px; color: var(--tt-text); }
body.tt-ui .tt-post__avatar { width: 40px; height: 40px; border-radius: 999px; background: var(--tt-text); color: #fff; font-size: 13px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
body.tt-ui .tt-post__avatar--lg { width: 56px; height: 56px; font-size: 16px; }
body.tt-ui .tt-post__share { display: flex; align-items: center; gap: 6px; }
body.tt-ui .tt-post__share > span { font-size: 12px; color: var(--tt-muted-2); margin-right: 4px; }
body.tt-ui .tt-post__share a, body.tt-ui .tt-post__share button { width: 40px; height: 40px; border-radius: 10px; border: 1px solid var(--tt-border); background: #fff; color: #334155; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-size: 11px; font-weight: 800; cursor: pointer; padding: 0; margin: 0; box-shadow: none; }
body.tt-ui .tt-post__share a:first-of-type { font-size: 14px; }
body.tt-ui .tt-post__share .tt-copy-link.is-done { border-color: #86EFAC; color: var(--tt-green); }
body.tt-ui .tt-post__hero { margin: 4px 0 0; border-radius: 16px; overflow: hidden; border: 1px solid var(--tt-border); background: #E2E8F0; }
body.tt-ui .tt-post__hero img { width: 100%; height: auto; display: block; }
body.tt-ui .tt-toc { padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; }
body.tt-ui .tt-toc__toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; border: 0; background: transparent; padding: 0; margin: 0; font-family: var(--tt-font); font-size: 12px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); cursor: pointer; box-shadow: none; min-height: 28px; }
body.tt-ui .tt-toc__toggle svg { transform: rotate(90deg); transition: transform .15s; }
body.tt-ui .tt-toc.is-collapsed .tt-toc__toggle svg { transform: rotate(0); }
body.tt-ui .tt-toc.is-collapsed .tt-toc__list { display: none; }
body.tt-ui .tt-toc__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; border-left: 2px solid var(--tt-border); max-height: 60vh; overflow: auto; }
body.tt-ui .tt-toc__item { margin: 0; }
body.tt-ui .tt-toc__item a { display: block; padding: 7px 0 7px 14px; margin-left: -2px; border-left: 2px solid transparent; font-size: 14px; font-weight: 600; color: var(--tt-muted); text-decoration: none; line-height: 1.4; }
body.tt-ui .tt-toc__item--3 a { padding-left: 26px; font-size: 13px; font-weight: 500; }
body.tt-ui .tt-toc__item a:hover, body.tt-ui .tt-toc__item a.is-active { border-left-color: var(--tt-accent); color: var(--tt-accent); }
body.tt-ui .tt-post__products { display: flex; flex-direction: column; gap: 12px; padding: 18px 20px; }
body.tt-ui .tt-post__product { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 10px; align-items: center; }
body.tt-ui .tt-post__product-thumb img { width: 64px; height: 48px; object-fit: cover; border-radius: 8px; display: block; }
body.tt-ui .tt-post__product-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.tt-ui .tt-post__product-body a { font-size: 14px; font-weight: 700; color: var(--tt-text); text-decoration: none; }
body.tt-ui .tt-post__product-body small { font-size: 13px; font-weight: 800; color: var(--tt-accent); }
body.tt-ui .tt-post__product .tt-btn { min-height: 38px; padding: 0 12px; font-size: 13px; }
body.tt-ui .tt-post__list { display: flex; flex-direction: column; gap: 12px; padding: 18px 20px; }
body.tt-ui .tt-post__list .tt-card__eyebrow { margin: 0; }
body.tt-ui .tt-post__mini { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center; text-decoration: none; }
body.tt-ui .tt-post__mini-thumb { width: 64px; height: 44px; border-radius: 8px; background: var(--tt-border-soft); overflow: hidden; }
body.tt-ui .tt-post__mini-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.tt-ui .tt-post__mini-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.tt-ui .tt-post__mini-body strong { font-size: 13px; font-weight: 700; color: var(--tt-text); line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.tt-ui .tt-post__mini-body small { font-size: 11px; color: var(--tt-muted-2); }
body.tt-ui .tt-post__content { font-size: 16px; line-height: 1.75; }
body.tt-ui .tt-post__content > *:first-child { margin-top: 0; }
body.tt-ui .tt-post__content h2 { font-size: 22px; scroll-margin-top: 90px; }
body.tt-ui .tt-post__content h3 { font-size: 18px; scroll-margin-top: 90px; }
body.tt-ui .tt-post__content figure { margin: 0 0 16px; }
body.tt-ui .tt-post__content figcaption { font-size: 13px; color: var(--tt-muted-2); margin-top: 6px; }
body.tt-ui .tt-post__content blockquote { margin: 0 0 16px; padding: 12px 16px; border-left: 4px solid var(--tt-accent); background: var(--tt-bg); border-radius: 0 12px 12px 0; }
body.tt-ui .tt-post__content pre { background: var(--tt-text); color: #E2E8F0; border-radius: 12px; padding: 14px 16px; overflow: auto; font-size: 13px; }
body.tt-ui .tt-post__content .wp-block-themetot-note { background: #EFF6FF; border-left: 4px solid #38a7ff; border-radius: 0 12px 12px 0; padding: 12px 14px !important; margin: 0 0 16px !important; }
body.tt-ui #ftwp-container-outer, body.tt-ui #ftwp-container, body.tt-ui .ftwp-trigger { display: none !important; }
body.tt-ui .tt-post__tags { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
body.tt-ui .tt-post__tags > span { font-size: 13px; color: var(--tt-muted-2); margin-right: 4px; }
body.tt-ui .tt-post__tags a { font-size: 12px; font-weight: 700; color: #334155; background: #fff; border: 1px solid var(--tt-border); border-radius: 999px; padding: 7px 12px; text-decoration: none; }
body.tt-ui .tt-post__tags a:hover { border-color: var(--tt-accent); color: var(--tt-accent); }
body.tt-ui .tt-author { display: flex; gap: 16px; align-items: flex-start; padding: 20px; }
body.tt-ui .tt-author strong { display: block; font-size: 15px; font-weight: 800; margin-bottom: 4px; }
body.tt-ui .tt-author p { margin: 0 0 6px; font-size: 14px; line-height: 1.6; color: var(--tt-muted); }
body.tt-ui .tt-author a { font-size: 13px; font-weight: 700; color: var(--tt-blue); text-decoration: none; }
body.tt-ui .tt-post__nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
body.tt-ui .tt-post__nav a { display: flex; flex-direction: column; gap: 4px; background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; padding: 14px 16px; text-decoration: none; }
body.tt-ui .tt-post__nav a.is-next { text-align: right; }
body.tt-ui .tt-post__nav a span { font-size: 11px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); }
body.tt-ui .tt-post__nav a strong { font-size: 14px; font-weight: 700; color: var(--tt-text); line-height: 1.4; }
body.tt-ui .tt-post__nav a:hover strong { color: var(--tt-accent); }
body.tt-ui .tt-post__related h2 { font-size: 20px; font-weight: 800; margin: 0 0 14px; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-post__related-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
body.tt-ui .tt-post-card { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; overflow: hidden; display: flex; flex-direction: column; }
body.tt-ui .tt-post-card__thumb { display: block; aspect-ratio: 16 / 9; background: var(--tt-border-soft); overflow: hidden; }
body.tt-ui .tt-post-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.tt-ui .tt-post-card__body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 6px; }
body.tt-ui .tt-post-card__cat { font-size: 11px; font-weight: 700; color: var(--tt-accent); }
body.tt-ui .tt-post-card__title { font-size: 14px; font-weight: 700; color: var(--tt-text); line-height: 1.4; text-decoration: none; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em; }
body.tt-ui .tt-post-card__date { font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-post__comments .comments-title, body.tt-ui .tt-post__comments #reply-title { font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-post__comments .comment-respond input.input-text, body.tt-ui .tt-post__comments textarea { border: 1px solid var(--tt-border); border-radius: 10px; box-shadow: none; }
body.tt-ui .tt-post__comments .submit { background: var(--tt-accent); border-radius: 10px; text-transform: none; letter-spacing: 0; font-weight: 700; }
@media (max-width: 1023px) {
	body.tt-ui .tt-post__grid { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "aside" "body"; gap: 16px; }
	body.tt-ui .tt-post__aside { position: static; }
	body.tt-ui .tt-post__title { font-size: 26px; }
	body.tt-ui .tt-post__lead { font-size: 15px; }
	body.tt-ui .tt-post__content { font-size: 15px; }
	body.tt-ui .tt-toc__list { max-height: none; }
}

/* --------------------------------------------------------------------------
   Bảng giá Membership
   -------------------------------------------------------------------------- */
body.tt-ui .tt-membership { padding: 16px 0 56px; }
body.tt-ui .tt-membership__hero { text-align: center; max-width: 780px; margin: 0 auto 28px; display: flex; flex-direction: column; align-items: center; gap: 12px; }
body.tt-ui .tt-membership__hero h1 { margin: 0; font-size: 34px; font-weight: 800; line-height: 1.2; letter-spacing: -.4px; text-transform: none; }
body.tt-ui .tt-membership__hero p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--tt-muted); }
body.tt-ui .tt-membership__hero .tt-shop__promises { justify-content: center; }
body.tt-ui .tt-membership__hero .tt-shop__promises span { background: #fff; }
body.tt-ui .tt-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; align-items: stretch; margin-bottom: 24px; }
body.tt-ui .tt-plan { position: relative; background: #fff; border: 1px solid var(--tt-border); border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 14px; }
body.tt-ui .tt-plan--featured { border: 2px solid var(--tt-accent); box-shadow: 0 12px 32px rgba(194, 37, 92, .12); }
body.tt-ui .tt-plan__badge { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); font-size: 11px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: #fff; background: var(--tt-accent); border-radius: 999px; padding: 5px 12px; white-space: nowrap; }
body.tt-ui .tt-plan__badge--dark { background: var(--tt-text); }
body.tt-ui .tt-plan__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
body.tt-ui .tt-plan__head h3 { margin: 0; font-size: 18px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-plan__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
body.tt-ui .tt-plan__amount { font-size: 30px; font-weight: 800; letter-spacing: -.5px; color: var(--tt-text); }
body.tt-ui .tt-plan--featured .tt-plan__amount { color: var(--tt-accent); }
body.tt-ui .tt-plan__amount .amount, body.tt-ui .tt-plan__amount .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; color: inherit; }
body.tt-ui .tt-plan__per { font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-plan__price del { font-size: 13px; color: var(--tt-muted-3); }
body.tt-ui .tt-plan__price del .amount { color: inherit; font-size: inherit; font-weight: 400; }
body.tt-ui .tt-plan__price small { flex-basis: 100%; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-plan__price small .amount { font-size: inherit; color: inherit; font-weight: 700; }
body.tt-ui .tt-plan__perks { padding-top: 14px; border-top: 1px solid var(--tt-border-soft); gap: 9px; font-size: 13px; flex: 1 1 auto; }
body.tt-ui .tt-plan__perks li strong { color: var(--tt-text); }
body.tt-ui .tt-plan__gift svg { color: var(--tt-accent); stroke-width: 2; }
body.tt-ui .tt-plan--sm { padding: 18px; gap: 10px; }
body.tt-ui .tt-plan--sm .tt-plan__amount { font-size: 24px; }
body.tt-ui .tt-plan--sm .tt-plan__perks { font-size: 12px; gap: 6px; padding-top: 10px; }
body.tt-ui .tt-plan--sm .tt-plan__perks li:nth-child(2) { display: none; }
body.tt-ui .tt-cmp { padding: 0; overflow: hidden; margin-bottom: 24px; }
body.tt-ui .tt-cmp__head { padding: 20px 24px 12px; display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
body.tt-ui .tt-cmp__head h2 { margin: 0; font-size: 20px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-cmp__head span { font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-cmp__chips { display: none; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; padding: 0 16px 12px; }
body.tt-ui .tt-cmp__chips button { min-height: 40px; border-radius: 10px; border: 1px solid var(--tt-border); background: #fff; color: #334155; font-family: var(--tt-font); font-size: 12px; font-weight: 700; cursor: pointer; padding: 0 6px; margin: 0; box-shadow: none; }
body.tt-ui .tt-cmp__chips button.is-active { background: var(--tt-accent); border-color: var(--tt-accent); color: #fff; }
body.tt-ui .tt-cmp__scroll { overflow-x: auto; }
body.tt-ui .tt-cmp__table { width: 100%; border-collapse: collapse; min-width: 760px; margin: 0; }
body.tt-ui .tt-cmp__table th, body.tt-ui .tt-cmp__table td { padding: 12px 14px; border: 0; border-bottom: 1px solid var(--tt-border-soft); vertical-align: middle; text-align: center; font-size: 14px; }
body.tt-ui .tt-cmp__table thead th { background: #F8FAFC; font-weight: 800; color: var(--tt-text); }
body.tt-ui .tt-cmp__table thead th small { display: block; font-size: 12px; font-weight: 600; color: var(--tt-muted-2); margin-top: 2px; }
body.tt-ui .tt-cmp__table thead th small .amount { font-size: inherit; font-weight: inherit; color: inherit; }
body.tt-ui .tt-cmp__table thead th:first-child { text-align: left; font-size: 12px; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2); width: 34%; }
body.tt-ui .tt-cmp__table thead th.is-featured { color: var(--tt-accent); background: #FFF5F8; }
body.tt-ui .tt-cmp__table tbody th[scope="row"] { text-align: left; font-weight: 500; color: #334155; }
body.tt-ui .tt-cmp__table tbody td { font-weight: 700; color: var(--tt-text); }
body.tt-ui .tt-cmp__table td[data-plan="plus"] { background: #FFF5F8; }
body.tt-ui .tt-cmp__grp th { text-align: left !important; font-size: 11px !important; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; color: var(--tt-muted-2) !important; background: #F8FAFC; padding: 10px 14px; }
body.tt-ui .tt-cmp__yes { color: #16A34A; display: inline-flex; }
body.tt-ui .tt-cmp__yes svg { stroke-width: 3; }
body.tt-ui .tt-cmp__no { color: #CBD5E1; font-weight: 700; }
body.tt-ui .tt-cmp__gift { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 700; color: var(--tt-accent); }
body.tt-ui .tt-cmp__cta th, body.tt-ui .tt-cmp__cta td { border-bottom: 0; padding-top: 16px; padding-bottom: 20px; }
body.tt-ui .tt-cmp__cta .tt-btn { min-height: 42px; font-size: 13px; padding: 0 16px; }
body.tt-ui .tt-membership__notes { margin-bottom: 24px; padding: 18px 22px; }
body.tt-ui .tt-membership__notes ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 8px 24px; }
body.tt-ui .tt-reasons { margin-bottom: 24px; }
body.tt-ui .tt-reasons h2 { margin: 0 0 16px; font-size: 20px; font-weight: 800; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-reasons__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; }
body.tt-ui .tt-reasons__grid > div { display: flex; gap: 12px; align-items: flex-start; }
body.tt-ui .tt-reasons__grid strong { display: block; font-size: 14px; }
body.tt-ui .tt-reasons__grid small { display: block; font-size: 13px; color: var(--tt-muted-2); line-height: 1.5; }
body.tt-ui .tt-cta-dark { background: var(--tt-text); color: #fff; border-radius: 18px; padding: 26px 28px; display: flex; flex-wrap: wrap; gap: 18px; align-items: center; justify-content: space-between; }
body.tt-ui .tt-cta-dark > div:first-child { display: flex; flex-direction: column; gap: 6px; flex: 1 1 360px; min-width: 0; }
body.tt-ui .tt-cta-dark strong { font-size: 20px; font-weight: 800; line-height: 1.3; }
body.tt-ui .tt-cta-dark span { font-size: 14px; line-height: 1.55; color: #CBD5E1; }
body.tt-ui .tt-cta-dark__actions { display: flex; gap: 10px; flex-wrap: wrap; }
@media (max-width: 849px) {
	body.tt-ui .tt-membership__hero h1 { font-size: 26px; }
	body.tt-ui .tt-plans { grid-template-columns: minmax(0, 1fr); }
	body.tt-ui .tt-cmp__chips { display: grid; }
	body.tt-ui .tt-cmp__table { min-width: 0; }
	body.tt-ui .tt-cmp__table thead th:first-child { width: auto; }
	body.tt-ui .tt-cmp[data-active="single"] [data-plan]:not([data-plan="single"]),
	body.tt-ui .tt-cmp[data-active="developer"] [data-plan]:not([data-plan="developer"]),
	body.tt-ui .tt-cmp[data-active="plus"] [data-plan]:not([data-plan="plus"]),
	body.tt-ui .tt-cmp[data-active="vip"] [data-plan]:not([data-plan="vip"]) { display: none; }
	body.tt-ui .tt-cmp__chips [data-plan] { display: inline-block !important; }
	body.tt-ui .tt-cmp__table th, body.tt-ui .tt-cmp__table td { padding: 10px 12px; font-size: 13px; }
	body.tt-ui .tt-cmp__table tbody td { text-align: right; }
	body.tt-ui .tt-cmp__table td[data-plan="plus"] { background: transparent; }
	body.tt-ui .tt-cta-dark { padding: 18px; }
}

/* --------------------------------------------------------------------------
   Trang chủ
   -------------------------------------------------------------------------- */
body.tt-ui .tt-home { padding: 20px 0 56px; }
body.tt-ui .tt-home-hero { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 24px; align-items: stretch; margin-bottom: 24px; }
body.tt-ui .tt-home-hero__main { background: #fff; border: 1px solid var(--tt-border); border-radius: 20px; padding: 36px; display: flex; flex-direction: column; gap: 16px; justify-content: center; min-width: 0; }
body.tt-ui .tt-home-hero__eyebrow { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; font-size: 12px; font-weight: 700; color: var(--tt-green); background: var(--tt-green-bg); border-radius: 999px; padding: 6px 12px; }
body.tt-ui .tt-home-hero h1 { margin: 0; font-size: 38px; font-weight: 800; line-height: 1.15; letter-spacing: -.6px; max-width: 640px; }
body.tt-ui .tt-home-hero__main > p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--tt-muted); max-width: 600px; }
body.tt-ui .tt-home-hero__search form, body.tt-ui .tt-home-hero__search .searchform { display: flex; gap: 8px; align-items: center; max-width: 620px; }
body.tt-ui .tt-home-hero__search .search-field, body.tt-ui .tt-home-hero__search input[type="search"], body.tt-ui .tt-home-hero__search input[type="text"] { flex: 1; min-height: 52px; border: 1px solid var(--tt-border); border-radius: 12px; padding: 0 16px; font-family: var(--tt-font); font-size: 15px; background: var(--tt-bg); box-shadow: none; margin: 0; }
body.tt-ui .tt-home-hero__search button, body.tt-ui .tt-home-hero__search input[type="submit"] { min-height: 52px; padding: 0 20px; border-radius: 12px; background: var(--tt-accent) !important; color: #fff !important; border: 0; font-family: var(--tt-font); font-size: 15px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0; box-shadow: none; cursor: pointer; }
body.tt-ui .tt-home-hero__search .dgwt-wcas-search-wrapp { max-width: 620px; }
body.tt-ui .tt-home-hero__chips { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; font-size: 13px; }
body.tt-ui .tt-home-hero__chips > span { color: var(--tt-muted-2); }
body.tt-ui .tt-home-hero__chips a { font-weight: 600; color: #334155; background: var(--tt-bg); border: 1px solid var(--tt-border); border-radius: 999px; padding: 7px 12px; text-decoration: none; }
body.tt-ui .tt-home-hero__chips a:hover { border-color: var(--tt-accent); color: var(--tt-accent); }
body.tt-ui .tt-home-hero__trust { list-style: none; margin: 4px 0 0; padding: 0; display: flex; gap: 16px; flex-wrap: wrap; font-size: 13px; color: var(--tt-muted); }
body.tt-ui .tt-home-hero__trust li { display: inline-flex; align-items: center; gap: 6px; margin: 0; }
body.tt-ui .tt-home-hero__trust svg { color: #16A34A; }
body.tt-ui .tt-spot { background: var(--tt-text); color: #fff; border-radius: 20px; padding: 28px; display: flex; flex-direction: column; gap: 12px; }
body.tt-ui .tt-spot h2 { margin: 0; font-size: 22px; font-weight: 800; line-height: 1.2; color: #fff; text-transform: none; letter-spacing: 0; }
body.tt-ui .tt-spot p { margin: 0; font-size: 13px; line-height: 1.55; color: #CBD5E1; }
body.tt-ui .tt-spot ul { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui .tt-spot li { display: flex; justify-content: space-between; align-items: center; gap: 10px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); border-radius: 10px; padding: 10px 12px; font-size: 14px; margin: 0; }
body.tt-ui .tt-spot li.is-featured { background: #fff; color: var(--tt-text); border-color: #fff; }
body.tt-ui .tt-spot li small { font-size: 11px; font-weight: 500; color: var(--tt-muted-3); margin-left: 4px; }
body.tt-ui .tt-spot li.is-featured small { color: var(--tt-muted-2); }
body.tt-ui .tt-spot li del { font-size: 12px; color: var(--tt-muted-3); margin-right: 6px; }
body.tt-ui .tt-spot li del .amount { color: inherit; font-size: inherit; font-weight: 400; }
body.tt-ui .tt-spot li b .amount { color: inherit; font-weight: 800; }
body.tt-ui .tt-spot li em { font-style: normal; margin-left: 6px; }
body.tt-ui .tt-spot .tt-btn { margin-top: 6px; }
body.tt-ui .tt-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin-bottom: 32px; }
body.tt-ui .tt-tile { background: #fff; border: 1px solid var(--tt-border); border-radius: 14px; padding: 14px 16px; display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--tt-text); transition: border-color .15s, box-shadow .15s; }
body.tt-ui .tt-tile:hover { border-color: var(--tt-accent); box-shadow: 0 8px 24px rgba(15, 23, 42, .06); }
body.tt-ui .tt-tile > span:last-child { display: flex; flex-direction: column; min-width: 0; }
body.tt-ui .tt-tile strong { font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.tt-ui .tt-tile small { font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-home-sec { margin-bottom: 32px; }
body.tt-ui .tt-home-sec__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
body.tt-ui .tt-home-sec__head h2 { margin: 0 0 4px; font-size: 22px; font-weight: 800; text-transform: none; letter-spacing: -.2px; }
body.tt-ui .tt-home-sec__head p { margin: 0; font-size: 14px; color: var(--tt-muted-2); }
body.tt-ui .tt-home-sec .products.row, body.tt-ui .tt-home-sec .row.large-columns-4, body.tt-ui .tt-home-sec .row.large-columns-5 { margin-left: -7px; margin-right: -7px; }
body.tt-ui .tt-home-sec .row > .col { padding: 0 7px 14px; }
body.tt-ui .tt-home-sec .slider-wrapper { margin: 0; }
body.tt-ui .tt-plans--home { margin-bottom: 0; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
body.tt-ui .tt-trust-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; padding: 20px 24px; margin-bottom: 32px; }
body.tt-ui .tt-trust-strip > div { display: flex; gap: 12px; align-items: center; }
body.tt-ui .tt-trust-strip strong { display: block; font-size: 14px; }
body.tt-ui .tt-trust-strip small { display: block; font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-home-bottom { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; }
body.tt-ui .tt-home-seo { font-size: 15px; }
body.tt-ui .tt-home-seo h2 { font-size: 20px; text-transform: none; letter-spacing: 0; margin-top: 0; }
body.tt-ui .tt-home-seo h3 { font-size: 16px; }
body.tt-ui .tt-home-seo ol { padding-left: 20px; }
body.tt-ui .tt-home-posts .tt-link { font-size: 13px; }
@media (max-width: 1023px) {
	body.tt-ui .tt-home-hero { grid-template-columns: minmax(0, 1fr); }
	body.tt-ui .tt-home-hero__main { padding: 24px; }
	body.tt-ui .tt-home-hero h1 { font-size: 28px; }
	body.tt-ui .tt-home-bottom { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
	body.tt-ui .tt-home-hero__main { padding: 18px; }
	body.tt-ui .tt-home-hero h1 { font-size: 24px; }
	body.tt-ui .tt-home-hero__search form { flex-direction: column; align-items: stretch; }
	body.tt-ui .tt-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	body.tt-ui .tt-tile { padding: 12px; gap: 10px; }
	body.tt-ui .tt-spot { padding: 20px; }
	body.tt-ui .tt-trust-strip { padding: 16px; gap: 12px; }
}

/* --------------------------------------------------------------------------
   Dọn phần còn sót của giao diện cũ & plugin
   (CSS cũ của Customizer / Additional CSS đã bị tắt trong inc/ui/legacy.php)
   -------------------------------------------------------------------------- */
/* Nút WooCommerce / Flatsome mặc định: bo góc, không viết hoa */
body.tt-ui .button:not(.tt-btn), body.tt-ui button.button, body.tt-ui input[type="submit"].button { border-radius: 10px; text-transform: none; letter-spacing: 0; font-weight: 700; box-shadow: none; }
body.tt-ui .lightbox-content { background: #fff; border-radius: 16px; box-shadow: 0 20px 60px rgba(15, 23, 42, .2); }
/* Add-on Lifetime: bỏ nền peach của nhãn nhóm */
body.tt-ui .tt-buy .wapf-field-label { background: transparent; padding: 0; margin: 0 0 6px; font-size: 13px; }
body.tt-ui .tt-buy .wapf-field-label label { margin: 0; }
/* Giá trong thẻ mua hàng: xếp dọc (giá gốc nhỏ phía trên) để nhãn bên trái không bị ép từng chữ */
body.tt-ui .tt-option__main { flex: 1 1 120px; }
body.tt-ui .tt-option__price { max-width: 55%; }
body.tt-ui .tt-option__price .price { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.2; margin: 0; }
body.tt-ui .tt-option__price .price del { order: -1; font-size: 12px; margin: 0; }
body.tt-ui .tt-option__price .price ins { text-decoration: none; }
/* Mô tả sản phẩm cũ (Kho Giao Diện) */
body.tt-ui .custom-product-description h2 { border: 0; background: none; padding: 0; font-size: 20px; }
/* Nút Zalo / Messenger nổi: ẩn trong giao diện mới (bật lại bằng filter themetot_floating_contact) */
body.tt-ui .echbay-sms-messenger { display: none; }
body.tt-ui.tt-has-floating .echbay-sms-messenger { display: block; position: fixed; right: 16px; bottom: 96px; z-index: 998; width: 48px; }
body.tt-ui.tt-has-floating .echbay-sms-messenger div { width: 48px; height: 48px; margin: 10px 0; border-radius: 50%; background: #0084FF center / 60% no-repeat; box-shadow: 0 6px 16px rgba(15, 23, 42, .18); }
body.tt-ui.tt-has-floating .echbay-sms-messenger .phonering-alo-zalo { background-image: url(/wp-content/uploads/2024/11/zalo.png); }
body.tt-ui.tt-has-floating .echbay-sms-messenger .phonering-alo-messenger { background-image: url(/wp-content/uploads/2024/11/messenger.png); background-color: #e60f1e; }
body.tt-ui.tt-has-floating .echbay-sms-messenger a { display: block; width: 100%; height: 100%; color: transparent; }
/* Thông báo "khách vừa mua" (plugin WooCommerce Notification): theo thẻ trắng của thiết kế mới */
body.tt-ui #message-purchased { background: #fff !important; color: var(--tt-text) !important; border: 1px solid var(--tt-border); border-radius: 14px !important; box-shadow: 0 12px 32px rgba(15, 23, 42, .14) !important; font-family: var(--tt-font) !important; font-size: 13px; }
body.tt-ui #message-purchased * { color: inherit; font-family: inherit; }
body.tt-ui #message-purchased a { color: var(--tt-text); text-decoration: none; }
body.tt-ui #message-purchased .wn-popup-product-title { color: var(--tt-accent); font-weight: 700; }
body.tt-ui #message-purchased .wcn-product-image, body.tt-ui #message-purchased img { border-radius: 10px; }
body.tt-ui #message-purchased #notify-close { background: #fff !important; border: 1px solid var(--tt-border); border-radius: 999px; box-shadow: none; }
body.tt-ui #message-purchased #notify-close:before { color: var(--tt-muted-2) !important; }
@media (max-width: 849px) { body.tt-ui #message-purchased { bottom: 84px !important; } }
/* Trang đăng nhập / đăng ký (form-login của Flatsome) */
body.tt-ui.woocommerce-account .account-container { padding: 0; }
body.tt-ui.woocommerce-account #customer_login { margin: 0; }
body.tt-ui.woocommerce-account #customer_login > .col { padding-bottom: 20px; }
body.tt-ui.woocommerce-account #customer_login > .col + .col { border-left: 0; }
body.tt-ui.woocommerce-account .account-login-inner, body.tt-ui.woocommerce-account .account-register-inner { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 24px !important; }
body.tt-ui.woocommerce-account .account-login-inner h2, body.tt-ui.woocommerce-account .account-register-inner h2 { font-size: 20px; font-weight: 800; text-transform: none; letter-spacing: 0; margin: 0 0 14px; }
body.tt-ui.woocommerce-account .account-register-inner .woocommerce-form-register { border: 0; padding: 0 !important; background: transparent; }
body.tt-ui.woocommerce-account .woocommerce-form-login label, body.tt-ui.woocommerce-account .woocommerce-form-register label { font-size: 13px; font-weight: 700; color: var(--tt-text); }
body.tt-ui.woocommerce-account .woocommerce-form-login .form-row, body.tt-ui.woocommerce-account .woocommerce-form-register .form-row { margin-bottom: 12px; }
body.tt-ui.woocommerce-account .cf-turnstile { margin: 4px 0; }
body.tt-ui.woocommerce-account .cf-turnstile-br { display: none; }
body.tt-ui.woocommerce-account .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 14px; }
body.tt-ui.woocommerce-account .woocommerce-form-login button.button, body.tt-ui.woocommerce-account .woocommerce-form-register button.button { width: 100%; }
body.tt-ui.woocommerce-account .lost_password { margin: 10px 0 0; font-size: 13px; }
body.tt-ui.woocommerce-account .lost_password a { color: var(--tt-blue); font-weight: 600; }
body.tt-ui.woocommerce-account .woocommerce-privacy-policy-text { font-size: 12px; color: var(--tt-muted-2); line-height: 1.5; }
body.tt-ui.woocommerce-account .woocommerce-privacy-policy-text a { color: var(--tt-blue); }
/* Giá trong thẻ sản phẩm: ép màu lên .amount (Flatsome đặt #111 cho .price .amount) */
body.tt-ui .product-small .price .amount, body.tt-ui .product-small .price ins .amount { color: var(--tt-accent); font-weight: 800; font-size: 16px; }
body.tt-ui .product-small .price del .amount { color: var(--tt-muted-3); font-weight: 400; font-size: 12px; }
/* Giá "Chỉ sản phẩm này": giá gốc nhỏ xếp trên giá bán (markup del/ins của WooCommerce) */
body.tt-ui .tt-option__price-main { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.2; }
body.tt-ui .tt-option__price-main del { order: -1; font-size: 12px; font-weight: 400; color: var(--tt-muted-3); margin: 0; }
body.tt-ui .tt-option__price-main del .amount { font-size: 12px; font-weight: 400; color: var(--tt-muted-3); }
body.tt-ui .tt-option__price-main ins { text-decoration: none; }
/* Khối ghi chú (block themetot/note) và nút trong nội dung bài viết / mô tả */
body.tt-ui .wp-block-themetot-note { background: #EFF6FF; border-left: 4px solid #2563EB; border-radius: 10px; padding: 12px 14px; margin: 0 0 14px; color: #1E3A8A; }
body.tt-ui .wp-block-themetot-note p:last-child { margin-bottom: 0; }
body.tt-ui .tt-prose .wp-block-button__link, body.tt-ui .tt-prose .wp-element-button { background: var(--tt-accent); color: #fff; border-radius: 10px; padding: 10px 18px; font-weight: 700; text-decoration: none; }
/* Trang nội dung thường (chính sách, hướng dẫn, liên hệ...) chưa có template riêng: khung trắng trên nền xám */
body.tt-ui.page:not(.home):not(.woocommerce-page):not(.page-id-43) .page-wrapper #content { background: #fff; border: 1px solid var(--tt-border); border-radius: 16px; padding: 28px; }
@media (max-width: 600px) { body.tt-ui.page:not(.home):not(.woocommerce-page):not(.page-id-43) .page-wrapper #content { padding: 18px 16px; } }

/* --------------------------------------------------------------------------
   Đối chiếu mock lần 2 (2026-10-28): giỏ hàng, thanh toán, đánh giá sản phẩm, phiên bản, popup, đăng nhập
   -------------------------------------------------------------------------- */
/* Giỏ hàng: meta dưới tên sản phẩm */
body.tt-ui .tt-cart-item { display: flex; flex-direction: column; gap: 4px; }
body.tt-ui .tt-cart-item__main { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
body.tt-ui .tt-cart-item__cat { font-size: 11px; font-weight: 600; color: var(--tt-muted-2); }
body.tt-ui table.shop_table.cart td.product-name .tt-cart-item__name a { font-size: 15px; font-weight: 700; color: var(--tt-text); }
body.tt-ui .tt-cart-item__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 12px; color: var(--tt-muted-2); font-weight: 500; }
body.tt-ui .tt-cart-item__sep { color: var(--tt-muted-3); }
body.tt-ui .tt-cart-item__lifetime { color: var(--tt-green); font-weight: 700; display: inline-flex; align-items: center; gap: 4px; }
body.tt-ui .tt-cart-item__upgrade { font-size: 12px; font-weight: 700; color: var(--tt-blue); text-decoration: none; display: inline-flex; align-items: center; gap: 4px; margin-top: 2px; }
body.tt-ui .tt-cart-item__upgrade:hover { color: var(--tt-accent); }
/* Thanh toán: dòng sản phẩm có ảnh nhỏ */
body.tt-ui .tt-cart-item--order { flex-direction: row; gap: 10px; align-items: flex-start; }
body.tt-ui .tt-order-item__img img { width: 48px; height: 36px; object-fit: cover; border-radius: 8px; display: block; }
body.tt-ui .woocommerce-checkout-review-order-table td.product-name { font-weight: 400; }
body.tt-ui .woocommerce-checkout-review-order-table .tt-cart-item__name { font-size: 14px; font-weight: 700; color: var(--tt-text); }
body.tt-ui .woocommerce-checkout-review-order-table .tt-cart-item__meta { font-size: 11px; }
/* Cam kết dưới nút thanh toán (trong thẻ tổng) */
body.tt-ui .tt-cart-trust { margin: 12px 0 0; padding: 0; border: 0; background: transparent; gap: 6px; font-size: 12px; color: var(--tt-muted); }
body.tt-ui .tt-cart-trust li { gap: 8px; }
body.tt-ui .tt-cart-trust svg { color: var(--tt-green); flex: 0 0 auto; }
body.tt-ui .cart-collaterals .tt-upsell { margin-top: 14px; }
/* Thường được mua cùng: thẻ có nút thêm vào giỏ */
body.tt-ui .cross-sells { margin-top: 20px; }
body.tt-ui .cross-sells .product-small .box-text .add-to-cart-button { display: block; margin-top: auto; padding-top: 8px; }
body.tt-ui .cross-sells .product-small .add-to-cart-button .button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 38px; font-size: 13px; font-weight: 700; background: #fff !important; color: var(--tt-text) !important; border: 1px solid var(--tt-border) !important; border-radius: 10px; box-shadow: none; margin: 0; text-transform: none; letter-spacing: 0; }
body.tt-ui .cross-sells .product-small .add-to-cart-button .button:hover { border-color: var(--tt-accent) !important; color: var(--tt-accent) !important; }
/* Thanh toán: bỏ viền màu + padding của cột đơn hàng (Flatsome .has-border), thẻ hỗ trợ */
body.tt-ui.woocommerce-checkout .col-inner.has-border { border: 0; padding: 0; }
body.tt-ui .tt-checkout-support { margin-top: 14px; }
/* Phiên bản trước */
body.tt-ui .tt-versions { list-style: none; margin: 0 0 12px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
body.tt-ui .tt-versions li { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0; padding: 10px 12px; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 10px; font-size: 13px; }
body.tt-ui .tt-versions li .tt-muted { display: inline-flex; align-items: center; gap: 4px; }
body.tt-ui .tt-versions li .tt-btn { margin-left: auto; }
body.tt-ui .tt-btn--sm { min-height: 36px; font-size: 13px; padding: 0 12px; }
body.tt-ui #tt-phien-ban > p { margin: 0; font-size: 13px; line-height: 1.55; }
/* Nút xem thêm / lấy mật khẩu trong mô tả cũ (class getpass-btn) */
body.tt-ui .getpass-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 18px; border: 0; border-radius: 10px; background: var(--tt-accent); color: #fff; font-family: var(--tt-font); font-size: 14px; font-weight: 700; cursor: pointer; margin: 8px 0; text-transform: none; letter-spacing: 0; }
/* Đánh giá sản phẩm (markup plugin DevVN Reviews) theo ngôn ngữ thiết kế mới */
body.tt-ui #reviews .woocommerce-Reviews-title { font-size: 18px; font-weight: 800; margin: 0 0 14px; color: var(--tt-text); text-transform: none; letter-spacing: 0; }
body.tt-ui #reviews .star_box { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 12px; padding: 14px 16px; margin: 0 0 14px; width: auto; }
body.tt-ui #reviews .star-average { text-align: center; min-width: 120px; padding: 0; border: 0; }
body.tt-ui #reviews .star_average { font-size: 32px; font-weight: 800; color: var(--tt-text); display: block; line-height: 1.1; }
body.tt-ui #reviews .star-average strong { font-size: 12px; color: var(--tt-muted-2); font-weight: 600; display: block; margin-top: 2px; }
body.tt-ui #reviews .star_box_left { flex: 1; min-width: 220px; padding: 0; }
body.tt-ui #reviews .devvn_review_row { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--tt-muted); margin: 3px 0; }
body.tt-ui #reviews .devvn_stars_value { width: 36px; font-weight: 700; color: var(--tt-text); display: inline-flex; align-items: center; gap: 2px; }
body.tt-ui #reviews .devvn_rating_bar { flex: 1; display: block; }
body.tt-ui #reviews .devvn_scala_rating { display: block; height: 8px; border-radius: 999px; overflow: hidden; background: var(--tt-border) !important; }
body.tt-ui #reviews .devvn_perc_rating { display: block; height: 100%; background: #F59E0B !important; border-radius: 999px; }
body.tt-ui #reviews .devvn_num_reviews { width: 120px; text-align: right; white-space: nowrap; }
body.tt-ui #reviews .devvn-star, body.tt-ui #reviews .devvn-star::before { color: #F59E0B; }
body.tt-ui #reviews .woocommerce-verification-required { font-size: 13px; color: var(--tt-muted-2); margin: 0 0 12px; }
body.tt-ui #reviews .devvn_reviews_filter { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; }
body.tt-ui #reviews .devvn_filter_btn { font-size: 12px; font-weight: 600; color: #334155 !important; background: #fff; border: 1px solid var(--tt-border); border-radius: 999px; padding: 6px 12px; text-decoration: none; line-height: 1.2; }
body.tt-ui #reviews .devvn_filter_btn.active { background: var(--tt-accent-soft); border-color: var(--tt-accent); color: var(--tt-accent) !important; }
body.tt-ui #reviews .commentlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
body.tt-ui #reviews .commentlist li { margin: 0; padding: 0; border: 0; }
body.tt-ui #reviews .devvn_review_box { display: flex; gap: 12px; align-items: flex-start; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 12px; padding: 12px 14px; margin: 0; }
body.tt-ui #reviews .devvn_review_avatar { width: 36px; height: 36px; border-radius: 999px; background: #DBEAFE; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; overflow: hidden; }
body.tt-ui #reviews .devvn_review_avatar img { width: 36px; height: 36px; border-radius: 999px; object-fit: cover; }
body.tt-ui #reviews .devvn_review_avatar:empty::before { content: ""; width: 14px; height: 14px; border-radius: 999px; background: var(--tt-blue); opacity: .45; }
body.tt-ui #reviews .comment-text { flex: 1; min-width: 0; font-size: 14px; color: #334155; padding: 0; margin: 0; border: 0; }
body.tt-ui #reviews .comment-text .meta { margin: 0 0 4px; font-size: 13px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: var(--tt-muted-2); }
body.tt-ui #reviews .woocommerce-review__author { color: var(--tt-text); font-weight: 700; }
body.tt-ui #reviews .woocommerce-review__verified { font-style: normal; font-size: 11px; font-weight: 700; color: var(--tt-green); background: var(--tt-green-bg); border-radius: 999px; padding: 2px 8px; }
body.tt-ui #reviews .devvn_review_mid .star-rating { color: #F59E0B; font-size: 13px; margin: 0 0 4px; }
body.tt-ui #reviews .description p { margin: 0; line-height: 1.55; }
body.tt-ui #reviews .devvn_review_bottom { margin-top: 6px; font-size: 12px; color: var(--tt-muted-2); display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
body.tt-ui #reviews .devvn_review_bottom a, body.tt-ui #reviews .devvn_review_bottom .cmtlike { color: var(--tt-blue); font-weight: 600; cursor: pointer; text-decoration: none; }
body.tt-ui #reviews .devvn_review_bottom .reply { display: inline; margin: 0; }
body.tt-ui #reviews .devvn_review_bottom time { color: var(--tt-muted-2); }
/* Popup khách vừa mua: plugin in ảnh nền hồng (::before) và chữ trắng bằng CSS inline */
body.tt-ui #message-purchased .message-purchase-main::before { display: none !important; }
body.tt-ui #message-purchased .message-purchase-main { background: #fff !important; color: var(--tt-text) !important; border-radius: 14px !important; }
body.tt-ui #message-purchased .message-purchase-main .wn-notification-message-container, body.tt-ui #message-purchased .message-purchase-main .wn-notification-message-container a, body.tt-ui #message-purchased .message-purchase-main .wn-notification-message-container span, body.tt-ui #message-purchased .message-purchase-main .wn-notification-message-container small { color: var(--tt-text) !important; }
body.tt-ui #message-purchased .message-purchase-main .wn-notification-message-container a.wn-popup-product-title-with-link { color: var(--tt-accent) !important; font-weight: 700; }
body.tt-ui #message-purchased .wn-notification-image { border-radius: 10px !important; }
/* Đăng nhập / đăng ký: bỏ viền kép (form nằm trong thẻ) */
body.tt-ui.woocommerce-account .account-login-inner .woocommerce-form-login, body.tt-ui.woocommerce-account .account-register-inner .woocommerce-form-register { border: 0 !important; padding: 0 !important; background: transparent; border-radius: 0; }

/* Giỏ hàng: link nâng cấp Lifetime (ghi đè rule link chung trong bảng giỏ) */
body.tt-ui table.shop_table.cart td.product-name a.tt-cart-item__upgrade { font-size: 12px; font-weight: 700; color: var(--tt-blue); }
body.tt-ui table.shop_table.cart td.product-name a.tt-cart-item__upgrade:hover { color: var(--tt-accent); }
/* Thanh toán: ẩn "× 1" (sản phẩm số luôn số lượng 1); tiêu đề "Đơn hàng của bạn" nằm trong thẻ */
body.tt-ui .woocommerce-checkout-review-order-table .product-quantity { display: none; }
body.tt-ui #order_review_heading { margin: 0; padding: 20px 20px 0; background: #fff; border: 1px solid var(--tt-border); border-bottom: 0; border-radius: 16px 16px 0 0; }
body.tt-ui #order_review { border-top: 0; border-radius: 0 0 16px 16px; padding-top: 12px; }
/* Thường được mua cùng: nút thêm vào giỏ trên thẻ */
body.tt-ui .tt-card-actions--one { grid-template-columns: 1fr; }
body.tt-ui .tt-card-actions .add_to_cart_button::before { content: "+"; font-weight: 800; margin-right: 4px; }
body.tt-ui .tt-card-actions .add_to_cart_button.added::before { content: "\2713"; }
body.tt-ui .tt-card-actions .add_to_cart_button.loading { opacity: .6; }
body.tt-ui .cross-sells .product-small .added_to_cart { display: none; }
/* Mô tả cũ: mật khẩu tải file chỉ hiện sau đếm ngược (JS bật lại), ô đếm ngược dạng pill */
body.tt-ui .pleaseWait-text, body.tt-ui .manualDownload-text { display: none; font-size: 15px; font-weight: 600; }
body.tt-ui .countdown span { display: inline-block; min-width: 44px; text-align: center; padding: 8px 14px; margin: 8px 0; border-radius: 10px; background: var(--tt-accent-soft); color: var(--tt-accent); font-weight: 800; }
/* Đánh giá: ghi chú "chỉ khách đã mua mới đánh giá" dạng nhẹ, không viền đỏ đứt */
body.tt-ui #reviews .woocommerce-verification-required { border: 0 !important; background: var(--tt-bg); border-radius: 10px; padding: 10px 12px; color: var(--tt-muted-2) !important; }
/* Trang chủ: khối SEO rút gọn ("Đọc thêm") + Hướng dẫn mới dạng thẻ rời, theo mock */
body.tt-ui .tt-home-seo { display: flex; flex-direction: column; gap: 12px; }
body.tt-ui .tt-home-seo > h2, body.tt-ui .tt-home-seo > p { margin: 0; }
body.tt-ui .tt-home-seo__toggle { background: none; border: 0; padding: 0; cursor: pointer; align-self: flex-start; font-family: inherit; text-transform: none; letter-spacing: 0; box-shadow: none; }
body.tt-ui .tt-home-seo__toggle svg { transition: transform .15s; }
body.tt-ui .tt-home-seo__toggle.is-open svg { transform: rotate(90deg); }
body.tt-ui .tt-home-seo__more[hidden] { display: none; }
body.tt-ui .tt-home-seo__more > :first-child { margin-top: 0; }
body.tt-ui .tt-home-guides { display: flex; flex-direction: column; gap: 12px; }
body.tt-ui .tt-home-guides h2 { font-size: 18px; font-weight: 800; margin: 0; }
body.tt-ui .tt-guide { display: flex; gap: 12px; align-items: center; padding: 14px; border-radius: 14px; text-decoration: none; color: var(--tt-text); transition: border-color .15s; }
body.tt-ui .tt-guide:hover { border-color: var(--tt-accent); color: var(--tt-text); }
body.tt-ui .tt-guide__thumb { width: 64px; height: 48px; border-radius: 8px; background: #F1F5F9; flex: 0 0 auto; overflow: hidden; }
body.tt-ui .tt-guide__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
body.tt-ui .tt-guide strong { font-size: 14px; font-weight: 600; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.tt-ui .tt-home-guides .tt-link { font-size: 13px; }
/* Modal "Yêu cầu cập nhật" (trang sản phẩm) + danh sách yêu cầu trong tài khoản */
body.tt-ui button.tt-btn { font-family: inherit; cursor: pointer; }
body.tt-ui.tt-modal-open { overflow: hidden; }
body.tt-ui .tt-modal { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 16px; }
body.tt-ui .tt-modal[hidden] { display: none; }
body.tt-ui .tt-modal__overlay { position: absolute; inset: 0; background: rgba(15, 23, 42, .55); }
body.tt-ui .tt-modal__card { position: relative; width: 100%; max-width: 460px; max-height: calc(100vh - 32px); overflow: auto; background: #fff; border-radius: 20px; box-shadow: 0 24px 64px rgba(15, 23, 42, .25); }
body.tt-ui .tt-modal__close { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 999px; background: var(--tt-bg); color: var(--tt-muted); display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: none; }
body.tt-ui .tt-modal__close:hover { color: var(--tt-text); background: var(--tt-border-soft); }
body.tt-ui .tt-modal__head { display: flex; align-items: center; gap: 14px; padding: 22px 60px 18px 24px; border-bottom: 1px solid var(--tt-border-soft); }
body.tt-ui .tt-modal__head .tt-stat__icon { flex: 0 0 auto; }
body.tt-ui .tt-modal__title { margin: 0; font-size: 20px; font-weight: 800; color: var(--tt-text); text-transform: none; letter-spacing: 0; line-height: 1.25; }
body.tt-ui .tt-modal__sub { margin: 2px 0 0; font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-modal__body { padding: 20px 24px 24px; font-size: 15px; color: #334155; line-height: 1.6; }
body.tt-ui .tt-modal__body > p { margin: 0 0 16px; }
body.tt-ui .tt-ur-current { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 14px; background: #F8FAFC; border: 1px solid var(--tt-border); border-radius: 12px; font-size: 14px; color: var(--tt-muted); margin: 0 0 16px; }
body.tt-ui .tt-ur-current strong { color: var(--tt-text); font-weight: 800; font-size: 15px; }
body.tt-ui .tt-ur-label { display: block; font-size: 14px; font-weight: 700; color: var(--tt-text); margin: 0 0 8px; }
body.tt-ui .tt-ur-input { display: block; box-sizing: border-box; width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid var(--tt-border); border-radius: 12px; font-family: var(--tt-font); font-size: 15px; color: var(--tt-text); background: #fff; box-shadow: none; margin: 0; }
body.tt-ui .tt-ur-input:focus { outline: none; border-color: var(--tt-accent); box-shadow: 0 0 0 3px var(--tt-accent-soft); }
body.tt-ui .tt-ur-help { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; font-size: 12px; color: var(--tt-muted-2); margin: 8px 0 16px; }
body.tt-ui .tt-ur-error { margin: -8px 0 12px; font-size: 13px; color: #B91C1C; }
body.tt-ui .tt-ur-error[hidden], body.tt-ui .tt-ur-form[hidden], body.tt-ui .tt-ur-done[hidden] { display: none; }
body.tt-ui .tt-ur-submit.is-loading { opacity: .6; pointer-events: none; }
body.tt-ui .tt-ur-note { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border-radius: 12px; background: #F8FAFC; border: 1px solid var(--tt-border); font-size: 14px; color: #334155; margin: 0 0 14px; }
body.tt-ui .tt-ur-note svg { flex: 0 0 auto; margin-top: 3px; color: var(--tt-blue); }
body.tt-ui .tt-ur-note--ok { background: var(--tt-green-bg); border-color: #BBF7D0; color: #166534; }
body.tt-ui .tt-ur-note--ok svg { color: var(--tt-green); }
body.tt-ui .tt-ur-list { list-style: none; margin: 0; padding: 0; }
body.tt-ui .tt-ur-list li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--tt-border-soft); margin: 0; }
body.tt-ui .tt-ur-list li:last-child { border-bottom: 0; padding-bottom: 0; }
body.tt-ui .tt-ur-list__main { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
body.tt-ui .tt-ur-list__main a { font-size: 15px; font-weight: 700; color: var(--tt-text); text-decoration: none; }
body.tt-ui .tt-ur-list__main a:hover { color: var(--tt-accent); }
body.tt-ui .tt-ur-list__main small { font-size: 12px; color: var(--tt-muted-2); }
body.tt-ui .tt-ur-list .tt-pill { flex: 0 0 auto; }
/* Modal "Báo lỗi" (trang sản phẩm): chọn loại vấn đề + mô tả */
body.tt-ui .tt-rp-types { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 16px; }
body.tt-ui .tt-rp-type { position: relative; margin: 0; display: block; }
body.tt-ui .tt-rp-type__input { position: absolute; opacity: 0; width: 0; height: 0; margin: 0; }
body.tt-ui .tt-rp-type__box { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; border: 1px solid var(--tt-border); border-radius: 12px; background: #fff; font-size: 14px; font-weight: 600; color: var(--tt-text); cursor: pointer; transition: border-color .15s, background .15s, color .15s; }
body.tt-ui .tt-rp-type__box svg { color: var(--tt-muted-2); flex: 0 0 auto; }
body.tt-ui .tt-rp-type__box:hover { border-color: #CBD5E1; }
body.tt-ui .tt-rp-type__input:checked + .tt-rp-type__box { border-color: var(--tt-blue); background: #EFF6FF; color: var(--tt-blue); }
body.tt-ui .tt-rp-type__input:checked + .tt-rp-type__box svg { color: var(--tt-blue); }
body.tt-ui .tt-rp-type__input:focus-visible + .tt-rp-type__box { box-shadow: 0 0 0 3px #DBEAFE; }
body.tt-ui textarea.tt-ur-input { min-height: 110px; padding: 12px 14px; resize: vertical; line-height: 1.5; }
body.tt-ui .tt-ur-help a { color: var(--tt-blue); font-weight: 600; text-decoration: none; }
body.tt-ui .tt-ur-help a:hover { text-decoration: underline; }
body.tt-ui .tt-rp-foot { margin: 14px 0 0; text-align: center; font-size: 13px; color: var(--tt-muted-2); }
body.tt-ui .tt-rp-foot a { color: var(--tt-blue); font-weight: 600; text-decoration: underline; }
body.tt-ui .tt-rp-form[hidden], body.tt-ui .tt-rp-done[hidden] { display: none; }
@media (max-width: 480px) { body.tt-ui .tt-rp-types { grid-template-columns: 1fr; } }
