/* =================================================================
   Tân Á Đại Thành – Flatsome child
   Nạp sau Flatsome. Màu chính/phụ, font chữ cấu hình trong Customizer
   (color_primary, color_secondary, type_*) – file này chỉ dùng token.
   ================================================================= */

:root {
	--tad-navy: #0b4da2;
	--tad-navy-dark: #083674;
	--tad-cyan: #00a0e3;
	--tad-red: #d71920;
	--tad-green: #12a150;
	--tad-ink: #10233f;
	--tad-text: #3a4a60;
	--tad-muted: #6b7a90;
	--tad-line: #e3e9f2;
	--tad-bg: #f3f6fb;
	--tad-card: #fff;
	--tad-radius: 12px;
	--tad-radius-sm: 8px;
	--tad-shadow: 0 1px 2px rgba(16, 35, 63, .06), 0 4px 16px rgba(16, 35, 63, .06);
	--tad-shadow-hover: 0 6px 24px rgba(11, 77, 162, .16);
	--tad-mbar-h: 62px;
}

/* ---------- Base ---------- */
body { color: var(--tad-text); background: var(--tad-bg); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6, .heading-font { color: var(--tad-ink); letter-spacing: -.01em; }
a { transition: color .15s; }
.tad-icon { display: inline-block; vertical-align: middle; flex-shrink: 0; }
#main, #content { background: transparent; }
.page-wrapper { padding-top: 20px; }
.tad-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
:focus-visible { outline: 2px solid var(--tad-cyan); outline-offset: 2px; }
.button, button, input[type=submit] { border-radius: var(--tad-radius-sm); letter-spacing: 0; text-transform: none; font-weight: 600; }
input[type=text], input[type=tel], input[type=email], input[type=search], input[type=number], select, textarea {
	border-radius: var(--tad-radius-sm); border-color: #cfd8e6; box-shadow: none; font-size: 15px;
}
input:focus, select:focus, textarea:focus { border-color: var(--tad-cyan); box-shadow: 0 0 0 3px rgba(0, 160, 227, .15); }

/* ---------- Top bar ---------- */
#top-bar { font-size: 13px; }
#top-bar .nav > li { margin: 0 6px; }
.tad-topbar__msg { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; font-size: 13px; }
.tad-topbar__pill { display: inline-block; margin-left: 10px; padding: 1px 10px; border: 1px solid rgba(255,255,255,.35); border-radius: 99px; font-size: 12px; }
.tad-hel--topbar-msg, .tad-hel--topbar-links { display: flex; align-items: center; }
.tad-topbar__msg svg { color: #7fd6ff; }
.nav > li.tad-hel > .tad-topbar__link, .tad-topbar__link { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 0 14px; color: rgba(255, 255, 255, .88) !important; font-size: 13px !important; font-weight: 500; line-height: 1; transition: color .15s; }
.tad-topbar__link:last-child { padding-right: 0; }
.tad-topbar__link + .tad-topbar__link::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 12px; margin-top: -6px; background: rgba(255, 255, 255, .22); }
.tad-topbar__link svg { opacity: .8; }
.tad-topbar__link:hover { color: #fff !important; }
.tad-topbar__link--tel { color: #fff !important; font-weight: 700; }

/* ---------- Header main ---------- */
.header-main { box-shadow: none; }
/* Ô tìm kiếm: 1 khối bo tròn, icon kính lúp bên trái, nút gradient nằm bên trong */
.header-search-form { max-width: 600px; width: 100%; }
.header-search-form .searchform { position: relative; background: #fff; border: 1.5px solid #cddaf0; border-radius: 999px; padding: 4px; box-shadow: 0 2px 10px rgba(11, 77, 162, .06); transition: border-color .2s, box-shadow .2s; }
.header-search-form .searchform:hover { border-color: #9fb8e0; }
.header-search-form .searchform:focus-within { border-color: var(--tad-cyan); box-shadow: 0 0 0 4px rgba(0, 160, 227, .14); }
.header-search-form .searchform .flex-row { align-items: center; }
.header-search-form .search-field { height: 40px; margin: 0; padding: 0 12px 0 44px !important; border: 0 !important; border-radius: 999px !important; box-shadow: none !important; font-size: 15px; color: var(--tad-ink);
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%238a97ab' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 16px 50% !important; }
.header-search-form .search-field::placeholder { color: #8a97ab; }
.header-search-form .searchform .flex-col .ux-search-submit.button { height: 40px; min-height: 40px; margin: 0; padding: 0 20px !important; border: 0; border-radius: 999px !important; background: linear-gradient(135deg, var(--tad-navy), #1474d4) !important; box-shadow: 0 3px 10px rgba(11, 77, 162, .28); display: inline-flex; align-items: center; gap: 7px; transition: filter .15s, transform .15s; }
.header-search-form .ux-search-submit:hover { filter: brightness(1.08); transform: translateY(-1px); }
.header-search-form .ux-search-submit i { font-size: 15px; margin: 0; }
.header-search-form .ux-search-submit::after { content: "Tìm kiếm"; font-size: 14px; font-weight: 600; letter-spacing: 0; }
.header-search-form .live-search-results { top: calc(100% + 8px); left: 0; right: 0; background: transparent; box-shadow: none; }
.header-search-form .autocomplete-suggestions { border-radius: 14px; overflow: hidden auto; box-shadow: 0 16px 40px rgba(16, 35, 63, .16); border: 1px solid var(--tad-line); background: #fff; }
.header-search-form .autocomplete-suggestion { padding: 8px 14px; border-bottom: 1px solid var(--tad-line); }
.header-search-form .autocomplete-suggestion:last-child { border-bottom: 0; }
.header-search-form .autocomplete-selected { background: var(--tad-bg); }
.header-search-form .search-name { font-size: 14px; color: var(--tad-ink); }
.header-search-form .search-price { font-size: 13px; color: var(--tad-red); font-weight: 600; }
@media (max-width: 849px) {
	.header-search-form .ux-search-submit::after { display: none; }
	.header-search-form .searchform .flex-col .ux-search-submit.button { padding: 0 14px !important; }
}
.tad-hh { display: flex; align-items: center; gap: 10px; color: var(--tad-ink); line-height: 1.2; }
.tad-hh__icon { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: rgba(215, 25, 32, .1); color: var(--tad-red); }
.tad-hh__text small { display: block; font-size: 12px; color: var(--tad-muted); }
.tad-hh__text strong { font-size: 18px; color: var(--tad-red); letter-spacing: .01em; }
.tad-hh:hover strong { color: var(--tad-navy); }
.header-nav .cart-item .header-cart-title { font-weight: 600; text-transform: none; }

/* Header bottom (menu) */
/* Gạch chân sáng khi hover / đang xem; mục "Sản phẩm" (mega menu) có icon + nền nổi */
.header-bottom { border-top: 0; background: linear-gradient(90deg, var(--tad-navy) 0%, #0a5bbd 100%) !important; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 6px 18px rgba(11, 77, 162, .14); }
.header-bottom .flex-row { min-height: 48px; }
.header-bottom-nav { gap: 2px; }
.header-bottom-nav > li { margin: 0 !important; }
.header-bottom-nav > li:not(.tad-hel) > a { position: relative; display: flex; align-items: center; gap: 6px; height: 48px; padding: 0 14px !important; font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; line-height: 1; color: rgba(255, 255, 255, .86) !important; border-radius: 0; transition: color .15s, background-color .15s; }
.header-bottom-nav > li:not(.tad-hel) > a::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: #7fd6ff; transform: scaleX(0); transition: transform .2s ease; }
.header-bottom-nav > li:not(.tad-hel) > a:hover, .header-bottom-nav > li.active > a, .header-bottom-nav > li.current-menu-ancestor > a, .header-bottom-nav > li.current-menu-parent > a { color: #fff !important; background: rgba(255, 255, 255, .08); }
.header-bottom-nav > li:not(.tad-hel) > a:hover::after, .header-bottom-nav > li.active > a::after, .header-bottom-nav > li.current-menu-ancestor > a::after, .header-bottom-nav > li.current-menu-parent > a::after { transform: scaleX(1); }
.header-bottom-nav > li.menu-item-has-block > a { background: rgba(255, 255, 255, .12); margin-right: 6px; }
.header-bottom-nav > li.menu-item-has-block > a::before { content: ""; width: 16px; height: 16px; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat; }
.header-bottom-nav > li > a .icon-angle-down { font-size: 12px; opacity: .75; margin-left: 2px; transition: transform .2s; }
.header-bottom-nav > li:hover > a .icon-angle-down { transform: rotate(180deg); }
.nav > li.tad-hel > .tad-quote-btn, .tad-quote-btn { display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 18px; border-radius: 999px; background: var(--tad-red); color: #fff !important; font-size: 14px; font-weight: 700; line-height: 1; white-space: nowrap; box-shadow: 0 4px 14px rgba(215, 25, 32, .35); transition: background-color .15s, transform .15s; }
.nav > li.tad-hel > .tad-quote-btn:hover, .tad-quote-btn:hover { background: #b9141a; transform: translateY(-1px); }
.nav-dropdown { border-radius: 10px; box-shadow: 0 12px 32px rgba(16, 35, 63, .16) !important; border: 1px solid var(--tad-line) !important; }
.nav-dropdown-default .nav-column li > a, .nav-dropdown.nav-dropdown-default > li > a { padding: 9px 14px; border-bottom: 0 !important; border-radius: 6px; color: var(--tad-ink); }
.nav-dropdown.nav-dropdown-default > li > a:hover, .nav-column li > a:hover { background: var(--tad-bg); color: var(--tad-navy); }
.nav-dropdown .nav-dropdown-col > a { font-weight: 700 !important; color: var(--tad-navy) !important; text-transform: none !important; }

/* Mobile header + menu */
@media (max-width: 849px) {
	.header-main .nav > li.html .tad-hh__text small { display: none; }
	.header-main .tad-hh__icon { width: 36px; height: 36px; }
	.header-main .tad-hh__text strong { font-size: 15px; }
	#header .header-bottom .header-search-form { max-width: none; padding: 4px 0 8px; }
}
.off-canvas .nav-sidebar .children li a, .off-canvas .nav-sidebar .sub-menu li a { text-transform: none; }

/* ---------- Breadcrumb ---------- */
.tad-bc { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 4px; font-size: 13px; color: var(--tad-muted); text-transform: none !important; letter-spacing: 0; margin: 0 0 12px; font-weight: 400; }
.tad-bc a { color: var(--tad-muted); }
.tad-bc a:hover { color: var(--tad-navy); }
.tad-bc .divider { opacity: .55; margin: 0 2px; display: inline-flex; }
.tad-bc-wrap { padding-top: 4px; }

/* ---------- Chip ---------- */
.tad-chip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid var(--tad-line); border-radius: 99px; background: #fff; color: var(--tad-ink); font-size: 14px; font-weight: 500; line-height: 1.2; white-space: nowrap; transition: all .15s; }
.tad-chip small { color: var(--tad-muted); font-size: 12px; }
.tad-chip:hover { border-color: var(--tad-navy); color: var(--tad-navy); }
.tad-chip.is-active { background: var(--tad-navy); border-color: var(--tad-navy); color: #fff; }
.tad-chip.is-active small { color: rgba(255,255,255,.8); }
.tad-chip--all { color: var(--tad-navy); font-weight: 600; border-color: transparent; background: transparent; padding-right: 4px; }
.tad-chip--all:hover { border-color: transparent; text-decoration: underline; }

/* ---------- Hero (trang chủ) ---------- */
.tad-hero { background: linear-gradient(120deg, #072c66 0%, #0b4da2 55%, #0a7fd0 100%); color: #fff; overflow: hidden; position: relative; }
.tad-hero::after { content: ""; position: absolute; right: -120px; top: -120px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(0,160,227,.45), transparent 70%); pointer-events: none; }
.tad-hero .tad-hero__eyebrow { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 99px; background: rgba(255,255,255,.14); font-size: 13px; font-weight: 600; margin-bottom: 14px; }
.tad-hero h1 { color: #fff; font-size: clamp(26px, 3.4vw, 40px); line-height: 1.18; margin-bottom: 12px; }
.tad-hero h1 span { color: #7fd6ff; }
.tad-hero p.lead { color: rgba(255,255,255,.86); font-size: 16px; max-width: 520px; }
.tad-hero .button { margin: 6px 10px 6px 0; }
.tad-hero .button.white { color: var(--tad-navy) !important; }
.tad-hero .slider-wrapper { border-radius: 16px; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,.28); }
.tad-hero .flickity-page-dots .dot { background: #fff; border-color: #fff; }
.tad-hero .tad-usp--inline { margin-top: 18px; }

/* ---------- USP ---------- */
.tad-usp { display: grid; gap: 12px; }
.tad-usp__item { display: flex; align-items: center; gap: 12px; }
.tad-usp__item strong { display: block; color: var(--tad-ink); font-size: 15px; line-height: 1.3; }
.tad-usp__item span { font-size: 13px; color: var(--tad-muted); line-height: 1.4; }
.tad-usp__icon { width: 48px; height: 48px; border-radius: 12px; display: grid; place-items: center; background: rgba(11, 77, 162, .08); color: var(--tad-navy); flex-shrink: 0; }
.tad-usp--bar { grid-template-columns: repeat(4, 1fr); background: #fff; border-radius: var(--tad-radius); box-shadow: var(--tad-shadow); padding: 18px 22px; }
.tad-usp--cards { grid-template-columns: repeat(4, 1fr); }
.tad-usp--cards .tad-usp__item { background: #fff; border-radius: var(--tad-radius); padding: 18px; box-shadow: var(--tad-shadow); }
.tad-usp--inline { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 18px; }
.tad-usp--inline .tad-usp__icon { width: 34px; height: 34px; border-radius: 9px; background: rgba(255,255,255,.14); color: #7fd6ff; }
.tad-usp--inline .tad-usp__icon svg { width: 18px; height: 18px; }
.tad-usp--inline strong { color: #fff; font-size: 14px; }
.tad-usp--inline .tad-usp__item div span { display: none; }
@media (max-width: 849px) {
	.tad-usp--bar, .tad-usp--cards { grid-template-columns: repeat(2, 1fr); padding: 14px; }
	.tad-usp__icon { width: 40px; height: 40px; }
	.tad-usp__item strong { font-size: 14px; }
	.tad-usp__item span { font-size: 12px; }
}

/* ---------- Lưới danh mục ---------- */
.tad-catgrid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
@media (max-width: 849px) { .tad-catgrid { grid-template-columns: repeat(3, 1fr); } }
.tad-catgrid__item { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 14px 10px 16px; background: #fff; border-radius: var(--tad-radius); box-shadow: var(--tad-shadow); color: var(--tad-ink); transition: transform .2s, box-shadow .2s; }
.tad-catgrid__item:hover { transform: translateY(-3px); box-shadow: var(--tad-shadow-hover); color: var(--tad-navy); }
.tad-catgrid__img { width: 100%; aspect-ratio: 1; display: grid; place-items: center; margin-bottom: 8px; border-radius: 10px; background: var(--tad-bg); overflow: hidden; }
.tad-catgrid__img img { width: 86%; height: 86%; object-fit: contain; mix-blend-mode: multiply; }
.tad-catgrid__name { font-weight: 700; font-size: 14px; line-height: 1.3; }
.tad-catgrid__count { font-size: 12px; color: var(--tad-muted); margin-top: 2px; }
@media (max-width: 549px) {
	.tad-catgrid { grid-template-columns: repeat(4, 1fr); gap: 8px; }
	.tad-catgrid__item { padding: 8px 4px 10px; box-shadow: none; border: 1px solid var(--tad-line); }
	.tad-catgrid__name { font-size: 12px; }
	.tad-catgrid__count { display: none; }
}

/* ---------- Tiêu đề section ---------- */
.tad-sechead { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 8px 16px; margin-bottom: 16px; }
.tad-sechead h2 { margin: 0; font-size: clamp(20px, 2.2vw, 26px); }
.tad-sechead p { margin: 4px 0 0; color: var(--tad-muted); }
.tad-sechead a { font-weight: 600; }

/* ---------- Khối sản phẩm theo danh mục ---------- */
.tad-catsec { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 20px 20px 8px; margin-bottom: 24px; }
.tad-catsec__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; margin-bottom: 14px; }
.tad-catsec__title h2 { margin: 0; font-size: clamp(19px, 2vw, 24px); position: relative; padding-left: 14px; }
.tad-catsec__title h2::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 4px; border-radius: 4px; background: linear-gradient(var(--tad-cyan), var(--tad-navy)); }
.tad-catsec__title p { margin: 4px 0 0 14px; color: var(--tad-muted); font-size: 14px; }
.tad-catsec__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.tad-catsec .row { margin-left: -6px !important; margin-right: -6px !important; }
@media (max-width: 549px) {
	.tad-catsec { padding: 14px 10px 4px; border-radius: 12px; margin-left: -6px; margin-right: -6px; }
	.tad-catsec__chips { flex-wrap: nowrap; overflow-x: auto; width: 100%; padding-bottom: 4px; scrollbar-width: none; }
	.tad-catsec__chips::-webkit-scrollbar { display: none; }
	.tad-chip { padding: 6px 12px; font-size: 13px; }
}

/* ---------- Thẻ sản phẩm ---------- */
.product-small.box { background: #fff; border: 1px solid var(--tad-line); border-radius: var(--tad-radius); overflow: hidden; height: 100%; transition: box-shadow .2s, border-color .2s; }
.product-small.box:hover { box-shadow: var(--tad-shadow-hover); border-color: transparent; }
.product-small .box-image { background: #fff; }
.product-small .box-image img { object-fit: contain; padding: 6px; }
.product-small .box-text { padding: 10px 12px 14px; text-align: left; }
.product-small .product-title, .product-small .name.product-title a { font-size: 14px; line-height: 1.4; font-weight: 600; color: var(--tad-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.8em; }
.product-small .product-title a:hover { color: var(--tad-navy); }
.product-small .category { display: none; }
.product-small .price-wrapper .price { display: block; margin-top: 4px; }
.product-small .price .amount, .tad-price-contact { color: var(--tad-red); font-weight: 700; font-size: 17px; }
.product-small .price del .amount { color: var(--tad-muted); font-size: 13px; font-weight: 400; }
.tad-price-contact { font-size: 15px; }
.tad-loop-specs { margin: 4px 0 0; font-size: 12.5px; color: var(--tad-muted); line-height: 1.4; }
.tad-badge { position: absolute; left: 8px; top: 8px; z-index: 2; display: inline-flex; align-items: center; gap: 4px; padding: 3px 8px; border-radius: 6px; font-size: 11.5px; font-weight: 700; line-height: 1.4; }
.tad-badge--warranty { background: rgba(11, 77, 162, .92); color: #fff; }
.product-small .star-rating { font-size: 12px; margin: 4px 0 0; }
.badge-container { margin: 8px; }
@media (max-width: 549px) {
	.product-small .box-text { padding: 8px 8px 12px; }
	.product-small .product-title, .product-small .name.product-title a { font-size: 13px; }
	.product-small .price .amount { font-size: 15px; }
}

/* ---------- Trang danh mục ---------- */
.shop-page-title.category-page-title { background: transparent; }
.shop-page-title .page-title-inner { padding-top: 6px; padding-bottom: 6px; }
.shop-page-title h1 { font-size: clamp(22px, 2.6vw, 30px); text-transform: none; letter-spacing: -.01em; }
.tad-archive-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
@media (max-width: 549px) {
	.tad-archive-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-left: -15px; margin-right: -15px; padding: 0 15px 4px; }
	.tad-archive-chips::-webkit-scrollbar { display: none; }
}
.woocommerce-ordering select { border-radius: 99px; padding-left: 16px; height: 38px; font-size: 14px; }
.category-filter-row .filter-button { border-radius: 99px; }
#shop-sidebar .widget { background: #fff; border-radius: var(--tad-radius); padding: 16px 18px; box-shadow: var(--tad-shadow); margin-bottom: 16px; }
#shop-sidebar .widget-title, .widget .widget-title { font-size: 15px; text-transform: none; letter-spacing: 0; color: var(--tad-ink); font-weight: 700; }
#shop-sidebar .is-divider { display: none; }
.widget_layered_nav ul li, .widget_product_categories ul li { padding: 3px 0; }
.widget_layered_nav ul li a, .widget_product_categories ul li a { color: var(--tad-text); }
.widget_layered_nav ul li.chosen a { color: var(--tad-navy); font-weight: 700; }
.woocommerce-pagination ul.links li .page-number { border-radius: 8px; }
.tad-catdesc { position: relative; background: #fff; border-radius: var(--tad-radius); box-shadow: var(--tad-shadow); padding: 22px 24px 16px; margin: 24px 0 8px; }
.tad-catdesc__body { max-height: 220px; overflow: hidden; position: relative; transition: max-height .35s ease; }
.tad-catdesc__body::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 80px; background: linear-gradient(rgba(255,255,255,0), #fff); }
.tad-catdesc.is-open .tad-catdesc__body { max-height: none; }
.tad-catdesc.is-open .tad-catdesc__body::after { display: none; }
.tad-catdesc.is-short .tad-catdesc__body::after, .tad-catdesc.is-short .tad-catdesc__more { display: none; }
.tad-catdesc__more { display: flex; align-items: center; gap: 4px; margin: 10px auto 0; padding: 6px 16px; border: 1px solid var(--tad-line); border-radius: 99px; background: #fff; color: var(--tad-navy); font-size: 14px; font-weight: 600; cursor: pointer; }
.tad-catdesc__more svg { transform: rotate(90deg); transition: transform .2s; }
.tad-catdesc.is-open .tad-catdesc__more svg { transform: rotate(-90deg); }
.tad-empty { background: #fff; border-radius: var(--tad-radius); padding: 24px; text-align: center; }

/* ---------- Chi tiết sản phẩm ---------- */
.tad-product .product-main { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 20px 0 10px; margin-bottom: 24px; }
.tad-product__bc .col { padding-bottom: 0; }
.tad-product .product-gallery .woocommerce-product-gallery__image img, .tad-product .product-gallery .slide img { object-fit: contain; }
.tad-product .product-thumbnails .col a { border-radius: 8px; overflow: hidden; border: 1px solid var(--tad-line); }
.tad-product .product-thumbnails .is-nav-selected a { border-color: var(--tad-navy); }
.tad-product .product-info { padding-top: 0; }
.tad-product .product-title { font-size: clamp(20px, 2vw, 25px); line-height: 1.3; margin-bottom: 6px; }
.tad-product .product-title + .is-divider { display: none; }
.tad-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 13.5px; color: var(--tad-muted); margin-bottom: 10px; }
.tad-meta__dot { width: 4px; height: 4px; border-radius: 50%; background: #c3cddc; }
.tad-meta__rating { display: inline-flex; align-items: center; gap: 4px; color: var(--tad-text); }
.tad-meta__rating .star-rating { margin: 0; font-size: 12px; }
.tad-meta__stock.is-in { color: var(--tad-green); font-weight: 600; display: inline-flex; align-items: center; gap: 3px; }
.tad-meta__stock.is-out { color: var(--tad-red); font-weight: 600; }
.tad-product .price-wrapper { background: linear-gradient(90deg, #fff4f4, #fff); border-radius: 10px; padding: 10px 14px; margin-bottom: 14px; }
.tad-product .product-info .price { margin: 0; }
.tad-product .product-info .price .amount, .tad-product .product-info .tad-price-contact { color: var(--tad-red); font-size: 28px; font-weight: 800; }
.tad-product .product-info .price del .amount { font-size: 16px; color: var(--tad-muted); font-weight: 400; }
.tad-options { margin-bottom: 14px; }
.tad-options__title { font-size: 14px; margin-bottom: 8px; color: var(--tad-text); }
.tad-options__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; }
.tad-option { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 8px 6px; border: 1.5px solid var(--tad-line); border-radius: 10px; color: var(--tad-ink); line-height: 1.25; transition: border-color .15s, background .15s; }
.tad-option__label { font-weight: 700; font-size: 14px; }
.tad-option__price { font-size: 12px; color: var(--tad-muted); margin-top: 2px; }
.tad-option__price .amount { color: inherit; font-size: inherit; font-weight: 500; }
.tad-option:hover { border-color: var(--tad-cyan); color: var(--tad-navy); }
.tad-option.is-active { border-color: var(--tad-navy); background: rgba(11, 77, 162, .06); color: var(--tad-navy); position: relative; }
.tad-option.is-active::after { content: ""; position: absolute; right: -1px; top: -1px; width: 16px; height: 16px; border-radius: 0 9px 0 8px; background: var(--tad-navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/10px no-repeat; }
.tad-product .product-short-description { font-size: 15px; }
.tad-product .product-short-description ul { margin-left: 0; }
.tad-product .product-short-description li { list-style: none; position: relative; padding-left: 24px; margin-bottom: 6px; }
.tad-product .product-short-description li::before { content: ""; position: absolute; left: 0; top: 4px; width: 16px; height: 16px; border-radius: 50%; background: var(--tad-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/10px no-repeat; }
.tad-keyspecs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border: 1px solid var(--tad-line); border-radius: 10px; overflow: hidden; margin: 0 0 6px; }
.tad-keyspecs > div { padding: 8px 12px; border-bottom: 1px solid var(--tad-line); }
.tad-keyspecs > div:nth-child(odd) { border-right: 1px solid var(--tad-line); }
.tad-keyspecs > div:nth-last-child(-n+2) { border-bottom: 0; }
.tad-keyspecs dt { font-size: 12px; color: var(--tad-muted); font-weight: 400; margin: 0; }
.tad-keyspecs dd { font-size: 14px; color: var(--tad-ink); font-weight: 600; margin: 0; }
.tad-keyspecs__more { display: inline-flex; align-items: center; gap: 2px; font-size: 13px; font-weight: 600; margin-bottom: 16px; }
.tad-product form.cart { margin-bottom: 10px; gap: 8px; flex-wrap: wrap; }
.tad-product form.cart .quantity { margin: 0 !important; flex: 0 0 auto; }
.tad-product form.cart .quantity .qty { height: 48px; border-radius: 0; }
.tad-product form.cart .quantity .button { height: 48px; border-radius: var(--tad-radius-sm); }
.tad-product form.cart .single_add_to_cart_button, .tad-product form.cart .ux-buy-now-button { flex: 1 1 0; min-width: 140px; height: 48px; margin: 0 !important; border-radius: var(--tad-radius-sm); font-size: 15px; }
.tad-product form.cart .single_add_to_cart_button { background: #fff !important; color: var(--tad-navy) !important; border: 2px solid var(--tad-navy) !important; }
.tad-product form.cart .single_add_to_cart_button:hover { background: rgba(11,77,162,.06) !important; }
.tad-product form.cart .ux-buy-now-button { background: var(--tad-red) !important; border-color: var(--tad-red) !important; color: #fff !important; }
.tad-cta__quote { width: 100%; height: 48px; display: flex !important; align-items: center; justify-content: center; gap: 8px; margin: 0 0 10px !important; background: var(--tad-red) !important; border-color: var(--tad-red) !important; font-size: 16px; }
.tad-cta__row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tad-cta__btn { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: var(--tad-radius-sm); border: 1px solid var(--tad-line); line-height: 1.2; color: var(--tad-ink); background: #fff; transition: border-color .15s; }
.tad-cta__btn strong { display: block; font-size: 15px; }
.tad-cta__btn small { font-size: 12px; color: var(--tad-muted); }
.tad-cta__btn--call { color: var(--tad-red); }
.tad-cta__btn--call strong { color: var(--tad-red); }
.tad-cta__btn--call svg { padding: 6px; width: 32px; height: 32px; border-radius: 50%; background: rgba(215,25,32,.1); }
.tad-cta__btn--zalo strong { color: #0068ff; }
.tad-cta__btn:hover { border-color: currentColor; }
.tad-aside__box { background: var(--tad-bg); border-radius: var(--tad-radius); padding: 14px 16px; margin-bottom: 12px; }
.tad-aside__title { font-weight: 700; color: var(--tad-ink); margin-bottom: 10px; font-size: 15px; }
.tad-aside__list { margin: 0; }
.tad-aside__list li { list-style: none; display: flex; gap: 10px; align-items: flex-start; margin: 0 0 10px; font-size: 13px; color: var(--tad-muted); line-height: 1.4; }
.tad-aside__list li svg { color: var(--tad-navy); margin-top: 2px; }
.tad-aside__list strong { display: block; color: var(--tad-ink); font-size: 14px; }
.tad-aside__phone { display: flex; align-items: center; gap: 8px; font-size: 22px; font-weight: 800; color: var(--tad-red); }
.tad-aside__hotline p { font-size: 13px; color: var(--tad-muted); margin: 4px 0 0; }
.tad-aside__addr { display: flex; gap: 8px; font-size: 13px; margin-bottom: 8px; line-height: 1.45; }
.tad-aside__addr svg { color: var(--tad-navy); margin-top: 2px; }
@media (max-width: 849px) {
	.tad-product .product-main { padding: 12px 0 4px; border-radius: 12px; box-shadow: none; }
	.tad-product__aside { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
	.tad-aside { display: contents; }
	.tad-aside__box { margin: 0; }
	.tad-aside__box:first-child { grid-column: 1 / -1; }
}
@media (max-width: 549px) {
	.tad-product__aside { grid-template-columns: 1fr; }
	.tad-product .product-info .price .amount { font-size: 24px; }
	.tad-options__list { grid-template-columns: repeat(auto-fill, minmax(84px, 1fr)); }
}

/* Tabs + thông số */
.tad-product .product-footer .woocommerce-tabs { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 6px 24px 24px; border-top: 0; margin-bottom: 24px; }
.tad-product .product-tabs { border-bottom: 1px solid var(--tad-line); margin-bottom: 18px; }
.tad-product .product-tabs li a { font-size: 16px; text-transform: none; letter-spacing: 0; font-weight: 700; padding: 14px 0; margin-right: 26px; color: var(--tad-muted); }
.tad-product .product-tabs li.active a { color: var(--tad-navy); box-shadow: inset 0 -3px 0 var(--tad-navy); }
.tad-product .product-tabs li a::before { display: none; }
.tad-product .tab-panels .entry-content { max-width: 900px; font-size: 16px; line-height: 1.7; }
.tad-product .tab-panels .entry-content img { border-radius: 10px; }
.woocommerce-product-attributes { border: 1px solid var(--tad-line); border-radius: 10px; overflow: hidden; border-collapse: separate; border-spacing: 0; max-width: 760px; }
.woocommerce-product-attributes th, .woocommerce-product-attributes td { padding: 11px 16px !important; border-bottom: 1px solid var(--tad-line); font-size: 15px; }
.woocommerce-product-attributes tr:last-child th, .woocommerce-product-attributes tr:last-child td { border-bottom: 0; }
.woocommerce-product-attributes th { width: 38%; background: var(--tad-bg); color: var(--tad-muted); font-weight: 500; text-transform: none; letter-spacing: 0; }
.woocommerce-product-attributes td p { margin: 0; }
.related.products, .up-sells { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 18px 18px 4px; margin-bottom: 24px; }
.related .product-section-title, .up-sells .product-section-title { font-size: 20px; text-transform: none; letter-spacing: 0; color: var(--tad-ink); }
@media (max-width: 549px) {
	.tad-product .product-footer .woocommerce-tabs { padding: 2px 14px 16px; border-radius: 12px; }
	.tad-product .product-tabs li a { font-size: 15px; margin-right: 16px; }
}

/* Sticky add-to-cart của Flatsome nằm trên thanh mobile */
@media (max-width: 849px) {
	.sticky-add-to-cart--active { bottom: var(--tad-mbar-h) !important; }
}

/* ---------- Form tư vấn ---------- */
.tad-lead { background: #fff; border-radius: var(--tad-radius); padding: 22px; }
.lightbox-content .tad-lead { padding: 28px; }
.tad-lead__title { font-size: 20px; font-weight: 800; color: var(--tad-ink); margin-bottom: 4px; }
.tad-lead__sub { font-size: 14px; color: var(--tad-muted); margin-bottom: 14px; }
.tad-lead__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.tad-field { margin: 0; }
.tad-field--full, .tad-lead__grid .tad-field:nth-child(3) { grid-column: 1 / -1; }
.tad-field input, .tad-field select, .tad-field textarea { width: 100%; margin: 0; height: 46px; }
.tad-field textarea { height: auto; min-height: 84px; padding-top: 10px; }
.tad-field.has-error input { border-color: var(--tad-red); box-shadow: 0 0 0 3px rgba(215,25,32,.12); }
.tad-lead__btn { width: 100%; height: 48px; margin: 12px 0 0 !important; font-size: 16px; background: var(--tad-red) !important; border-color: var(--tad-red) !important; }
.tad-lead__btn[disabled] { opacity: .7; cursor: wait; }
.tad-lead__msg { margin: 10px 0 0; font-size: 14px; font-weight: 600; }
.tad-lead__msg:empty { display: none; }
.tad-lead__msg.is-ok { color: var(--tad-green); }
.tad-lead__msg.is-err { color: var(--tad-red); }
.tad-lead__note { font-size: 13px; color: var(--tad-muted); margin: 8px 0 0; text-align: center; }
.tad-lead__note a { color: var(--tad-red); font-weight: 700; }
.tad-lead--compact .tad-lead__grid { grid-template-columns: 1fr 1fr 1fr; }
.tad-lead--compact .tad-lead__grid .tad-field:nth-child(3) { grid-column: auto; }
@media (max-width: 549px) {
	.tad-lead__grid, .tad-lead--compact .tad-lead__grid { grid-template-columns: 1fr; }
	.tad-lead__grid .tad-field { grid-column: auto !important; }
}

/* ---------- Nút liên hệ nổi (desktop) ---------- */
.tad-float { position: fixed; right: 18px; bottom: 22px; z-index: 990; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }
.tad-float__btn { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: #fff; box-shadow: 0 6px 18px rgba(16,35,63,.2); color: var(--tad-navy); transition: transform .2s; }
.tad-float__btn:hover { transform: scale(1.06); }
.tad-float__btn--quote { flex-direction: column; gap: 0; font-size: 10px; font-weight: 700; line-height: 1; background: var(--tad-navy); color: #fff; }
.tad-float__btn--quote svg { margin-bottom: 2px; }
.tad-float__btn--quote:hover { color: #fff; }
.tad-float__btn--zalo { padding: 0; background: transparent; }
.tad-float__call { display: flex; align-items: center; gap: 10px; padding: 5px 18px 5px 5px; border-radius: 99px; background: var(--tad-red); color: #fff !important; box-shadow: 0 6px 20px rgba(215,25,32,.35); line-height: 1.15; }
.tad-float__ring { width: 42px; height: 42px; border-radius: 50%; background: #fff; color: var(--tad-red); display: grid; place-items: center; animation: tad-ring 1.6s infinite; }
.tad-float__num { font-weight: 800; font-size: 16px; }
.tad-float__num small { display: block; font-weight: 500; font-size: 11px; opacity: .9; }
@keyframes tad-ring { 0%, 100% { box-shadow: 0 0 0 0 rgba(255,255,255,.6); } 70% { box-shadow: 0 0 0 10px rgba(255,255,255,0); } }
@media (prefers-reduced-motion: reduce) { .tad-float__ring { animation: none; } }
.back-to-top { bottom: 24px !important; right: auto !important; left: 20px !important; }

/* ---------- Thanh điều hướng mobile ---------- */
.tad-mbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 995; height: calc(var(--tad-mbar-h) + env(safe-area-inset-bottom, 0px)); padding-bottom: env(safe-area-inset-bottom, 0px); background: #fff; border-top: 1px solid var(--tad-line); box-shadow: 0 -4px 16px rgba(16,35,63,.08); display: grid; grid-template-columns: repeat(5, 1fr); }
.tad-mbar > a { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; font-size: 11px; font-weight: 500; color: var(--tad-muted); line-height: 1.1; }
.tad-mbar > a.is-active, .tad-mbar > a:hover { color: var(--tad-navy); }
.tad-mbar__call { color: var(--tad-red) !important; font-weight: 700 !important; }
.tad-mbar__callicon { width: 48px; height: 48px; margin-top: -22px; border-radius: 50%; background: var(--tad-red); color: #fff; display: grid; place-items: center; box-shadow: 0 6px 16px rgba(215,25,32,.4); border: 3px solid #fff; animation: tad-ring 1.6s infinite; }
@media (max-width: 849px) {
	body { padding-bottom: calc(var(--tad-mbar-h) + env(safe-area-inset-bottom, 0px)); }
	.back-to-top { bottom: calc(var(--tad-mbar-h) + 14px) !important; right: 12px !important; }
}
@media (min-width: 850px) { .tad-mbar { display: none; } }

/* ---------- Liên hệ ---------- */
.tad-contact__company { font-weight: 700; color: inherit; margin-bottom: 10px; }
.tad-contact { margin: 0; }
.tad-contact li { list-style: none; display: flex; gap: 10px; align-items: flex-start; margin-bottom: 10px; line-height: 1.45; }
.tad-contact li svg { margin-top: 3px; opacity: .8; }
.tad-contact small { display: block; font-size: 12px; opacity: .7; }
.tad-showrooms { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.tad-showroom { display: flex; gap: 14px; background: #fff; border-radius: var(--tad-radius); padding: 18px; box-shadow: var(--tad-shadow); }
.tad-showroom h3 { font-size: 17px; margin-bottom: 4px; }
.tad-showroom p { margin-bottom: 6px; }
.tad-showroom__icon { width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; background: rgba(11,77,162,.08); color: var(--tad-navy); flex-shrink: 0; }
.tad-showroom__meta { font-size: 13px; color: var(--tad-muted); display: flex; align-items: center; gap: 5px; }
.tad-showroom__actions .button { margin: 6px 6px 0 0; }
@media (max-width: 549px) { .tad-showrooms { grid-template-columns: 1fr; } }
.tad-map { position: relative; border-radius: var(--tad-radius); overflow: hidden; background: linear-gradient(135deg, #e7eef8, #d6e3f5); }
.tad-map iframe { width: 100%; height: 100%; border: 0; display: block; }
.tad-map__btn { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; background: transparent; border: 0; color: var(--tad-navy); font-weight: 600; font-size: 15px; text-transform: none; cursor: pointer; }
.tad-map__btn:hover { background: rgba(255,255,255,.3); }

/* ---------- Footer ---------- */
.tad-footer { background: #072c66; color: rgba(255,255,255,.82); font-size: 14px; }
.tad-footer h3, .tad-footer .tad-footer__title { color: #fff; font-size: 16px; margin-bottom: 14px; }
.tad-footer a { color: rgba(255,255,255,.86); }
.tad-footer a:hover { color: #7fd6ff; }
.tad-footer .tad-contact__company { color: #fff; }
.tad-footer__logo { background: #fff; display: inline-block; padding: 8px 12px; border-radius: 10px; margin-bottom: 14px; }
.tad-footer__logo img { height: 40px; width: auto; display: block; }
.tad-links { margin: 0; }
.tad-links li { list-style: none; margin-bottom: 8px; }
.tad-footer .tad-usp { border-bottom: 1px solid rgba(255,255,255,.12); padding-bottom: 22px; margin-bottom: 26px; }
.tad-footer .tad-usp__icon { background: rgba(255,255,255,.1); color: #7fd6ff; }
.tad-footer .tad-usp__item strong { color: #fff; }
.tad-footer .tad-usp__item span { color: rgba(255,255,255,.66); }
.tad-footer .tad-usp--bar { background: transparent; box-shadow: none; padding: 0 0 22px; border-radius: 0; }
.absolute-footer.dark { background: #051f4a; color: rgba(255,255,255,.6); font-size: 13px; }
.absolute-footer.dark a { color: rgba(255,255,255,.75); }
@media (max-width: 849px) { .absolute-footer { padding-bottom: 14px; } }

/* ---------- Blog ---------- */
.blog-archive .post-item .box, .tad-related__item { background: #fff; border-radius: var(--tad-radius); overflow: hidden; box-shadow: var(--tad-shadow); transition: box-shadow .2s; }
.blog-archive .post-item .box:hover { box-shadow: var(--tad-shadow-hover); }
.blog-archive .post-item .box-text { padding: 14px 16px 18px; }
.blog-archive .post-title { font-size: 17px; line-height: 1.4; }
.blog-archive .post-meta { font-size: 13px; color: var(--tad-muted); }
.archive-page-header .page-title { text-transform: none; letter-spacing: 0; }
.blog-single .article-inner, .single-post .article-inner { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 24px 28px; }
.single-post .entry-header-text { padding-top: 0; }
.single-post .entry-title { font-size: clamp(22px, 2.6vw, 32px); line-height: 1.3; }
.single-post .entry-category { text-transform: none; letter-spacing: 0; font-size: 13px; }
.single-post .entry-content { font-size: 16.5px; line-height: 1.75; color: #2c3b52; }
.single-post .entry-content h2 { font-size: 23px; margin-top: 1.6em; scroll-margin-top: 110px; }
.single-post .entry-content h3 { font-size: 19px; margin-top: 1.3em; scroll-margin-top: 110px; }
/* Bảng: khung viền + cuộn ngang nằm ở lớp bọc .tad-table-scroll (inc/blog.php), bảng luôn rộng 100% */
.tad-table-scroll { margin: 0 0 1.5em; overflow-x: auto; -webkit-overflow-scrolling: touch; background: #fff; border: 1px solid var(--tad-line); border-radius: 12px; box-shadow: 0 1px 2px rgba(16, 35, 63, .04); }
.single-post .entry-content table { display: table; width: 100%; min-width: 480px; margin: 0; border: 0; border-collapse: collapse; border-spacing: 0; }
.single-post .entry-content table th { background: var(--tad-navy); color: #fff; text-transform: none; letter-spacing: 0; font-size: 14px; font-weight: 700; text-align: left; }
.single-post .entry-content table td, .single-post .entry-content table th { padding: 11px 16px; border: 0; border-bottom: 1px solid var(--tad-line); vertical-align: middle; }
.single-post .entry-content table tr:last-child td { border-bottom: 0; }
.single-post .entry-content table tbody tr:nth-child(even) td { background: #f7f9fd; }
.single-post .entry-content table tbody tr:hover td { background: #eef4fc; }
.single-post .entry-content table td a { font-weight: 600; }
.single-post .entry-content table td strong { color: var(--tad-red); white-space: nowrap; }
.single-post .entry-content table td:not(:first-child), .single-post .entry-content table th:not(:first-child) { white-space: nowrap; }
.single-post .entry-content blockquote { border-left: 4px solid var(--tad-cyan); background: #f2f9fe; padding: 14px 18px; border-radius: 0 10px 10px 0; font-style: normal; }
@media (max-width: 549px) { .blog-single .article-inner, .single-post .article-inner { padding: 16px; border-radius: 0; margin: 0 -15px; box-shadow: none; } }
.tad-toc { background: var(--tad-bg); border: 1px solid var(--tad-line); border-radius: var(--tad-radius); padding: 6px 18px 10px; margin: 18px 0 24px; }
.tad-toc__toggle { display: flex; align-items: center; gap: 8px; width: 100%; margin: 0; padding: 8px 0; background: none; border: 0; color: var(--tad-ink); font-weight: 700; font-size: 16px; text-transform: none; text-align: left; cursor: pointer; }
.tad-toc__toggle::after { content: "Thu gọn"; margin-left: auto; font-size: 13px; font-weight: 500; color: var(--tad-navy); }
.tad-toc.is-closed .tad-toc__toggle::after { content: "Mở rộng"; }
.tad-toc.is-closed .tad-toc__list { display: none; }
.tad-toc__list { margin: 4px 0 0 18px; counter-reset: none; }
.tad-toc__list li { margin-bottom: 6px; font-size: 15px; line-height: 1.45; }
.tad-toc__list .tad-toc__l3 { margin-left: 16px; list-style: circle; font-size: 14px; }
.tad-toc__list a { color: var(--tad-text); }
.tad-toc__list a:hover { color: var(--tad-navy); }
.tad-postcta { display: grid; grid-template-columns: 1fr; gap: 6px; background: linear-gradient(120deg, #072c66, #0b4da2); color: #fff; border-radius: 16px; padding: 20px; margin: 28px 0; }
.tad-postcta__title { color: #fff; font-size: 19px; font-weight: 800; margin-bottom: 4px; }
.tad-postcta p { color: rgba(255,255,255,.88); margin-bottom: 6px; }
.tad-postcta a { color: #ffd24a; }
.tad-postcta .tad-lead { background: transparent; padding: 0; }
.tad-postcta .tad-lead__note { display: none; }
.tad-related { margin: 8px 0 24px; }
.tad-related__title { font-size: 20px; }
.tad-related__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.tad-related__item { display: flex; flex-direction: column; color: var(--tad-ink); }
.tad-related__img img { width: 100%; aspect-ratio: 3/2; object-fit: cover; display: block; }
.tad-related__date { font-size: 12px; color: var(--tad-muted); padding: 10px 14px 0; }
.tad-related__name { font-weight: 700; font-size: 15px; line-height: 1.4; padding: 2px 14px 14px; }
@media (max-width: 549px) { .tad-related__grid { grid-template-columns: 1fr; } }
.widget-area .widget { background: #fff; border-radius: var(--tad-radius); padding: 16px 18px; box-shadow: var(--tad-shadow); margin-bottom: 16px; }
.widget-area .is-divider { display: none; }
.recent-blog-posts a { color: var(--tad-ink); font-weight: 600; line-height: 1.4; }

/* ---------- Section chung trang chủ / giới thiệu ---------- */
.tad-card { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 24px; }
.tad-card--outline { box-shadow: none; border: 1px solid var(--tad-line); }
.tad-card--soft { box-shadow: none; background: #e9f1fc; }
.tad-card--navy { background: linear-gradient(135deg, var(--tad-navy), var(--tad-navy-dark)); color: rgba(255,255,255,.88); }
.tad-card--navy h1, .tad-card--navy h2, .tad-card--navy h3, .tad-card--navy a:not(.button) { color: #fff; }
.tad-card > :last-child { margin-bottom: 0; }
.tad-stats { display: grid; grid-template-columns: repeat(var(--tad-cols, 4), minmax(0, 1fr)); gap: 12px; }
.tad-stat { background: #fff; border-radius: var(--tad-radius); padding: 18px; text-align: center; box-shadow: var(--tad-shadow); }
.tad-stat strong { display: block; font-size: 30px; font-weight: 800; color: var(--tad-navy); line-height: 1.1; }
.tad-stat span { font-size: 14px; color: var(--tad-muted); }
@media (max-width: 549px) { .tad-stats { grid-template-columns: 1fr 1fr; } .tad-stat strong { font-size: 24px; } }
.tad-steps { counter-reset: step; display: grid; grid-template-columns: repeat(var(--tad-cols, 4), minmax(0, 1fr)); gap: 14px; }
.tad-step { position: relative; background: #fff; border-radius: var(--tad-radius); padding: 22px 18px 18px; box-shadow: var(--tad-shadow); }
.tad-step::before { counter-increment: step; content: counter(step); position: absolute; top: -12px; left: 18px; width: 28px; height: 28px; border-radius: 50%; background: var(--tad-navy); color: #fff; font-weight: 700; display: grid; place-items: center; font-size: 14px; }
.tad-step h3 { font-size: 16px; margin: 4px 0 6px; }
.tad-step p { font-size: 14px; color: var(--tad-muted); margin: 0; }
@media (max-width: 849px) { .tad-steps { grid-template-columns: 1fr 1fr; gap: 20px 12px; } }
.tad-gallery .gallery-col img, .tad-gallery .ux-image img { border-radius: 10px; }
.tad-video { position: relative; border-radius: 16px; overflow: hidden; background: #000; }
.tad-video video { width: 100%; display: block; aspect-ratio: 16/9; object-fit: cover; }
.tad-table-wrap { overflow-x: auto; }
.tad-table { width: 100%; border: 1px solid var(--tad-line); border-radius: 10px; border-collapse: separate; border-spacing: 0; overflow: hidden; background: #fff; }
.tad-table th { background: var(--tad-navy); color: #fff; text-transform: none; letter-spacing: 0; font-size: 14px; padding: 12px 14px; }
.tad-table td { padding: 12px 14px; border-bottom: 1px solid var(--tad-line); font-size: 15px; vertical-align: top; }
.tad-table tr:last-child td { border-bottom: 0; }
.tad-table a { font-weight: 600; }

/* Trang chính sách / trang nội dung */
.page-template-default .page-wrapper .entry-content, .tad-page { background: #fff; border-radius: 16px; box-shadow: var(--tad-shadow); padding: 24px 28px; }
.page-template-page-blank .entry-content, .home .entry-content { background: transparent; box-shadow: none; padding: 0; border-radius: 0; }
@media (max-width: 549px) { .page-template-default .page-wrapper .entry-content { padding: 16px; } }
.page-title-inner h1 { text-transform: none; letter-spacing: 0; }

/* ---------- Giải pháp nước cho ngôi nhà ---------- */
.tad-solutionsec { border-radius: 18px; overflow: hidden; }
.tad-solutions { display: grid; grid-template-columns: repeat(var(--tad-cols, 2), minmax(0, 1fr)); gap: 10px; margin: 0; }
.tad-solutions li { list-style: none; margin: 0; }
.tad-solutions a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.16); color: #fff; backdrop-filter: blur(6px); transition: background .2s; line-height: 1.3; }
.tad-solutions a:hover { background: rgba(255,255,255,.2); color: #fff; }
.tad-solutions strong { display: block; font-size: 15px; }
.tad-solutions small { display: block; font-size: 12.5px; opacity: .8; }
.tad-solutions__icon { width: 38px; height: 38px; border-radius: 10px; display: grid; place-items: center; background: rgba(127,214,255,.2); color: #7fd6ff; flex-shrink: 0; }
.tad-solutions__go { margin-left: auto; opacity: .6; }
.tad-solutionsec h2 { color: #fff; }
.tad-solutionsec p { color: rgba(255,255,255,.85); }
@media (max-width: 549px) { .tad-solutions { grid-template-columns: 1fr; } }

/* ---------- Mega menu ---------- */

/* ---------- Tinh chỉnh sau kiểm tra trực quan ---------- */
.tad-solutionsec { border-radius: 0; }
ul.tad-links, ul.tad-contact, ul.tad-solutions, ul.tad-aside__list { padding-left: 0; }
.tad-links li, .tad-contact li, .tad-solutions li, .tad-aside__list li { margin-left: 0 !important; }
.tad-showroom .button.is-outline { color: var(--tad-navy); border-color: var(--tad-navy); }
.tad-showroom .button.is-outline:hover { background: var(--tad-navy); color: #fff; }
/* Ô nhập của form: nền xám nhạt không viền; focus nền trắng + vòng sáng */
.tad-lead__grid { gap: 12px; }
.tad-lead .tad-field input, .tad-lead .tad-field select, .tad-lead .tad-field textarea { border: 1px solid transparent; border-radius: 10px; background-color: #f1f4f9; box-shadow: none; color: var(--tad-ink); font-size: 15px; font-weight: 400; padding-left: 14px; padding-right: 14px; transition: background-color .15s, border-color .15s, box-shadow .15s; }
.tad-lead .tad-field input, .tad-lead .tad-field select { height: 48px; min-height: 48px; padding-top: 0; padding-bottom: 0; }
.tad-lead .tad-field textarea { padding-top: 12px; }
.tad-lead .tad-field select { -webkit-appearance: none; appearance: none; padding-right: 40px; cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7a90' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 16px; }
.tad-lead .tad-field input:hover, .tad-lead .tad-field select:hover, .tad-lead .tad-field textarea:hover { background-color: #eaeff6; }
.tad-lead .tad-field input:focus, .tad-lead .tad-field select:focus, .tad-lead .tad-field textarea:focus { background-color: #fff; border-color: var(--tad-cyan); box-shadow: 0 0 0 3px rgba(0, 160, 227, .14); outline: 0; }
.tad-lead .tad-field.has-error input, .tad-lead .tad-field.has-error select, .tad-lead .tad-field.has-error textarea { background-color: #fff5f5; border-color: var(--tad-red); box-shadow: 0 0 0 3px rgba(215, 25, 32, .1); }
.tad-lead ::placeholder { color: #8a97ab; font-weight: 400; }
.tad-home-blog .post-item .col-inner { background: #fff; border-radius: var(--tad-radius); overflow: hidden; box-shadow: var(--tad-shadow); height: 100%; transition: box-shadow .2s; }
.tad-home-blog .post-item .col-inner:hover { box-shadow: var(--tad-shadow-hover); }
.tad-home-blog .box-text { padding: 14px 16px 18px !important; }
.tad-home-blog .post-title { font-size: 16px; line-height: 1.4; }
.tad-home-blog .is-divider { display: none; }
.tad-home-blog .from_the_blog_excerpt { font-size: 14px; color: var(--tad-muted); }
.tad-contact__bank { margin-top: 14px; padding-top: 14px; border-top: 1px dashed var(--tad-line); font-size: 14px; }
.tad-product__bc .breadcrumbs, .tad-bc-wrap .breadcrumbs, .shop-page-title .breadcrumbs { font-size: 14px !important; text-transform: none; letter-spacing: 0; font-weight: 400; }
.tad-product__bc .breadcrumbs a { color: var(--tad-muted); }
.tad-product__bc { margin-top: 4px; }
.tad-keyspecs dt, .tad-keyspecs dd { display: block; float: none; width: auto; text-transform: none !important; letter-spacing: 0 !important; padding: 0; }
@media (max-width: 549px) { .tad-hero .tad-hero__eyebrow { display: none; } .tad-hero p.lead { font-size: 15px; } }
.tad-toc__sub { margin: 6px 0 4px 18px; list-style: circle; }
.tad-toc__sub li { font-size: 14px; margin-bottom: 4px; }
.recent-blog-posts .post_comments, .recent-blog-posts .op-7.block.is-xsmall { display: none !important; }
.widget-area .tad-lead { padding: 0; }
.widget-area .tad-lead__grid { grid-template-columns: 1fr; }
.widget-area .tad-lead__grid .tad-field { grid-column: auto !important; }

/* =================================================================
   Bổ sung theo "Thông tin khởi tạo website.xlsx"
   ================================================================= */

/* Lưới danh mục / mega menu: 7 nhóm chính */
.tad-catgrid { grid-template-columns: repeat(7, 1fr); }
@media (max-width: 1099px) { .tad-catgrid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 549px) { .tad-catgrid { grid-template-columns: repeat(4, 1fr); } }

/* Top bar: link báo giá dự án */
.tad-topbar__link--hl { color: #ffd24a !important; font-weight: 600; }

/* Nút nổi: chỉ đường, messenger + tooltip */
.tad-float__btn { position: relative; }
.tad-float__btn--map { color: var(--tad-green); }
.tad-float__btn--messenger { background: linear-gradient(135deg, #0a7cff, #a033ff 60%, #ff5c87); color: #fff; }
.tad-float__btn--messenger:hover { color: #fff; }
.tad-float__btn[data-tip]::after { content: attr(data-tip); position: absolute; right: calc(100% + 10px); top: 50%; transform: translateY(-50%); white-space: nowrap; background: var(--tad-ink); color: #fff; font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 6px; opacity: 0; pointer-events: none; transition: opacity .15s; }
.tad-float__btn[data-tip]:hover::after { opacity: 1; }
.tad-mbar__messenger { color: #0a7cff !important; }

/* Nhãn giao hàng & lắp đặt */
.tad-dlv { margin: 0; padding: 0; }
.tad-dlv li { list-style: none; margin: 0 !important; }
.tad-dlv--loop { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 7px; }
.tad-dlv--loop li { display: inline-flex; align-items: center; gap: 3px; padding: 2px 7px; border-radius: 99px; background: rgba(18, 161, 80, .09); color: var(--tad-green); font-size: 11.5px; font-weight: 600; line-height: 1.5; }
.tad-dlv-box { border: 1px dashed #b9d9c6; background: #f5fbf7; border-radius: 10px; padding: 12px 14px; margin: 4px 0 14px; }
.tad-dlv-box__title { font-weight: 700; color: var(--tad-ink); margin-bottom: 8px; font-size: 14.5px; }
.tad-dlv--single li { display: flex; gap: 10px; align-items: flex-start; margin-bottom: 8px !important; font-size: 13px; color: var(--tad-muted); line-height: 1.4; }
.tad-dlv--single li svg { color: var(--tad-green); margin-top: 1px; }
.tad-dlv--single strong { display: block; color: var(--tad-ink); font-size: 14px; }
.tad-dlv-box__more { display: inline-flex; align-items: center; gap: 2px; font-size: 13px; font-weight: 600; }

/* Gợi ý dung tích */
.tad-calc { background: #fff; border: 1px solid var(--tad-line); border-radius: var(--tad-radius); margin: 0 0 16px; overflow: hidden; }
.tad-calc__head { display: flex; align-items: center; gap: 8px; padding: 12px 16px; cursor: pointer; list-style: none; font-weight: 700; color: var(--tad-navy); background: rgba(11, 77, 162, .05); }
.tad-calc__head::-webkit-details-marker { display: none; }
.tad-calc__head::after { content: ""; margin-left: auto; width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s; }
.tad-calc[open] .tad-calc__head::after { transform: rotate(-135deg); }
.tad-calc__body { padding: 14px 16px 16px; }
.tad-calc__inputs { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 18px; margin-bottom: 12px; }
.tad-calc__field { display: flex; flex-direction: column; gap: 4px; margin: 0; font-size: 13px; color: var(--tad-muted); font-weight: 500; }
.tad-calc__field select { margin: 0; height: 42px; min-width: 240px; }
.tad-calc__stepper { display: inline-flex; align-items: center; gap: 2px; height: 46px; padding: 4px; border-radius: 999px; background: var(--tad-bg); border: 1px solid var(--tad-line); }
.tad-calc__stepper button { width: 36px; height: 36px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--tad-navy); font-size: 20px; font-weight: 600; line-height: 1; box-shadow: 0 1px 3px rgba(16, 35, 63, .14); transition: background-color .15s, color .15s; }
.tad-calc__stepper button:hover { background: var(--tad-navy); color: #fff; }
.tad-calc__stepper button:active { transform: scale(.94); }
.tad-calc__stepper input { width: 52px; height: 36px; min-height: 0; margin: 0; padding: 0; border: 0 !important; border-radius: 0; background: transparent !important; text-align: center; font-weight: 800; font-size: 17px; color: var(--tad-ink); box-shadow: none !important; -moz-appearance: textfield; }
.tad-calc__stepper input::-webkit-inner-spin-button { -webkit-appearance: none; }
.tad-calc__option { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 10px; font-size: 14px; font-weight: 500; color: var(--tad-text); }
.tad-calc__option input { margin: 0; }
.tad-calc__need { margin: 0 0 8px; font-size: 15px; }
.tad-calc__need strong:last-child { color: var(--tad-navy); }
.tad-calc__list { margin: 0; padding: 0; display: grid; gap: 8px; }
.tad-calc__list li { list-style: none; margin: 0 !important; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; padding: 10px 0; border-bottom: 1px dashed var(--tad-line); }
.tad-calc__list li:last-child { border-bottom: 0; padding-bottom: 0; }
.tad-calc__cat { font-size: 13px; color: var(--tad-muted); min-width: 150px; }
.tad-calc__pick { font-size: 15px; color: var(--tad-red); font-weight: 600; }
.tad-calc__pick strong { color: var(--tad-ink); }
.tad-calc__all { margin-left: auto; font-size: 13px; font-weight: 600; }
.tad-calc__over { font-size: 13px; color: var(--tad-text); }
.tad-calc__note { margin: 10px 0 0; font-size: 12.5px; color: var(--tad-muted); }
.tad-home-calc .tad-calc { box-shadow: var(--tad-shadow); border: 0; }
@media (max-width: 549px) {
	.tad-calc__field select { min-width: 0; width: 100%; }
	.tad-calc__inputs > label.tad-calc__field { width: 100%; }
	.tad-calc__all { margin-left: 0; }
}

/* Form báo giá dự án */
.tad-lead--project .tad-lead__title { display: flex; align-items: center; gap: 8px; }
.tad-lead--project .tad-lead__title svg { color: var(--tad-navy); }
.tad-lead__grid--project { grid-template-columns: 1fr 1fr; }
.tad-lead__grid--project .tad-field:nth-child(3) { grid-column: auto; }
.tad-lead__grid--project .tad-field--full { grid-column: 1 / -1 !important; }
.tad-lead__grid--project textarea { min-height: 110px; }
.tad-lead .tad-field textarea.has-error, .tad-field.has-error textarea, .tad-field.has-error select { border-color: var(--tad-red); }
.tad-aside__project p { font-size: 13px; color: var(--tad-muted); margin-bottom: 8px; }
.tad-aside__project .button { margin: 0; display: inline-flex; align-items: center; gap: 6px; color: var(--tad-navy); border-color: var(--tad-navy); }
.tad-project-perks { display: grid; gap: 10px; margin: 0 0 18px; padding: 0; }
.tad-project-perks li { list-style: none; margin: 0 !important; display: flex; gap: 10px; align-items: flex-start; }
.tad-project-perks svg { color: var(--tad-green); margin-top: 3px; }

/* Liên hệ: chỉ đường, mạng xã hội */
.tad-contact__dir { font-size: 12px; font-weight: 600; white-space: nowrap; margin-left: 4px; }
.tad-social { display: flex; gap: 8px; margin-top: 12px; }
.tad-social__item { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.12); color: #fff !important; }
.tad-social__item:hover { background: rgba(255,255,255,.24); }
.tad-social__item--zalo { background: transparent; }

/* ---------- Khối UX Builder (inc/ux-blocks) ---------- */
.tad-ux-img { display: block; width: 100%; height: 100%; object-fit: contain; }
.tad-usp__icon .tad-ux-img, .tad-solutions__icon .tad-ux-img { width: 70%; height: 70%; }
.tad-project-perks .tad-ux-img { width: 18px; height: 18px; margin-top: 3px; flex-shrink: 0; }
@media (max-width: 849px) { .tad-stats, .tad-steps { grid-template-columns: repeat(min(var(--tad-cols, 4), 2), minmax(0, 1fr)); } }
@media (max-width: 549px) { .tad-solutions { grid-template-columns: 1fr; } }

/* ---------- Blog: dòng meta bài viết, sidebar ---------- */
.entry-meta.uppercase { text-transform: none; letter-spacing: 0; font-size: 14px; }
.tad-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.tad-meta__item { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: var(--tad-bg); color: var(--tad-muted); font-weight: 500; line-height: 1.2; }
.tad-meta__item svg { color: var(--tad-navy); opacity: .75; }
.tad-meta__item a { color: inherit; }
.tad-meta__item a:hover { color: var(--tad-navy); }
a.tad-meta__cat { background: rgba(11, 77, 162, .08); color: var(--tad-navy); font-weight: 600; transition: background-color .15s, color .15s; }
a.tad-meta__cat:hover { background: var(--tad-navy); color: #fff; }
a.tad-meta__cat:hover svg { color: #fff; opacity: 1; }
.post-sidebar { padding-left: 12px !important; padding-right: 12px !important; padding-bottom: 20px !important; }
.recent-blog-posts .badge { height: 5.8em; width: 5.8em; }
.recent-blog-posts .badge-inner { border-radius: 10px; background-size: cover !important; background-position: center !important; }
.recent-blog-posts-li .recent-blog-posts { align-items: center; }
.recent-blog-posts-li a { font-size: 15px; line-height: 1.4; font-weight: 600; color: var(--tad-ink); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.recent-blog-posts-li a:hover { color: var(--tad-navy); }
@media (max-width: 849px) { .post-sidebar { padding-left: 15px !important; padding-right: 15px !important; } }

/* ---------- Phần tử header trong menu trượt (mobile) ---------- */
.nav-sidebar > li.has-child > a { flex: 1 1 0%; min-width: 0; }
.nav-sidebar > li.has-child > .toggle { flex-shrink: 0; }
.nav-sidebar .tad-hel { padding: 12px 20px; }
.nav-sidebar .tad-hel--topbar-links { flex-direction: column; align-items: stretch; gap: 2px; border-top: 1px solid var(--tad-line); }
.nav.nav-sidebar > li.tad-hel > .tad-topbar__link { padding: 10px 0; color: var(--tad-ink) !important; font-size: 15px !important; font-weight: 600; }
.nav.nav-sidebar > li.tad-hel > .tad-topbar__link svg { color: var(--tad-navy); opacity: 1; }
.nav.nav-sidebar > li.tad-hel > .tad-topbar__link--hl, .nav.nav-sidebar > li.tad-hel > .tad-topbar__link--tel { color: var(--tad-navy) !important; }
.nav-sidebar .tad-topbar__link + .tad-topbar__link::before { display: none; }
/* Flatsome đặt flex-wrap: wrap cho .nav > li > a → icon và chữ tách dòng khi hẹp */
.nav > li.tad-hel > a { flex-wrap: nowrap; white-space: nowrap; }
.tad-topbar__msg, .tad-topbar__pill { white-space: nowrap; }
@media (max-width: 1279px) { #top-bar .tad-topbar__pill { display: none; } }

/* ---------- Footer: element Menu của Flatsome (.tad-fmenu) ---------- */
.tad-fmenu .ux-menu-title { min-height: 0; margin: 0 0 12px; padding: 0; color: #fff; font-size: 16px; font-weight: 700; text-transform: none; letter-spacing: 0; }
.tad-fmenu .ux-menu-link__link { min-height: 0; padding: 5px 0; border: 0 !important; color: rgba(255, 255, 255, .82); font-size: 14px; line-height: 1.45; transition: color .15s, transform .15s; }
.tad-fmenu .ux-menu-link:hover .ux-menu-link__link, .tad-fmenu .ux-menu-link--active .ux-menu-link__link { color: #7fd6ff; transform: translateX(3px); }

/* ---------- Widget chuyên mục (sidebar blog) ---------- */
.widget_categories ul { margin: 0; padding: 0; }
.widget_categories li { list-style: none; margin: 0 !important; padding: 0 !important; border: 0 !important; }
.widget_categories li + li { margin-top: 4px !important; }
.widget.widget_categories ul li a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; color: var(--tad-ink); font-size: 15px; font-weight: 500; line-height: 1.3; transition: background-color .15s, color .15s; }
.widget.widget_categories ul li a::before { content: ""; width: 16px; height: 16px; flex-shrink: 0; background: var(--tad-navy); opacity: .7;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.widget.widget_categories ul li a:hover { background: var(--tad-bg); color: var(--tad-navy); }
.widget.widget_categories ul li.current-cat > a { background: rgba(11, 77, 162, .08); color: var(--tad-navy); font-weight: 700; }
.widget.widget_categories ul li.current-cat > a::before { opacity: 1; }
.widget_categories .tad-count { margin-left: auto; min-width: 26px; height: 22px; padding: 0 8px; border-radius: 99px; display: inline-grid; place-items: center; background: var(--tad-bg); color: var(--tad-muted); font-size: 12px; font-weight: 700; transition: background-color .15s, color .15s; }
.widget.widget_categories ul li a:hover .tad-count, .widget.widget_categories ul li.current-cat > a .tad-count { background: var(--tad-navy); color: #fff; }

/* ---------- Trang chuyên mục / lưu trữ bài viết ---------- */
.tad-archive-head { margin-bottom: 4px; }
.tad-archive-head__box { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 24px; padding: 22px 26px; background: linear-gradient(135deg, #fff 0%, #eaf2fd 100%); border: 1px solid var(--tad-line); border-radius: 16px; }
.tad-archive-head__label { display: inline-block; margin-bottom: 4px; color: var(--tad-cyan); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.tad-archive-head .page-title { margin: 0; font-size: clamp(24px, 3vw, 32px); text-transform: none; letter-spacing: -.01em; }
.tad-archive-head .taxonomy-description { margin-top: 6px; max-width: 720px; color: var(--tad-muted); }
.tad-archive-head .taxonomy-description p { margin: 0; }
.tad-archive-head__count { padding: 6px 14px; border: 1px solid var(--tad-line); border-radius: 99px; background: #fff; color: var(--tad-muted); font-size: 14px; white-space: nowrap; }
.tad-archive-head__count strong { color: var(--tad-navy); }
.tad-archive-chips--blog { margin: 14px 0 0; }
.tad-archive-grid .row { align-items: stretch; }
.tad-archive-grid .post-item .col-inner { height: 100%; }
.tad-archive-grid .box-image { width: 100%; flex-shrink: 0; }
.tad-archive-grid .box-blog-post { height: 100%; display: flex; flex-direction: column; background: #fff; border-radius: var(--tad-radius); overflow: hidden; box-shadow: var(--tad-shadow); transition: box-shadow .2s, transform .2s; }
.tad-archive-grid .post-item:hover .box-blog-post { box-shadow: var(--tad-shadow-hover); transform: translateY(-2px); }
.tad-archive-grid .box-image img { transition: transform .4s ease; }
.tad-archive-grid .post-item:hover .box-image img { transform: scale(1.04); }
.tad-archive-grid .box-text { flex: 1; padding: 14px 16px 18px !important; }
.tad-archive-grid .post-title { margin-bottom: 6px; color: var(--tad-ink); font-size: 16px; font-weight: 700; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.tad-archive-grid .post-item:hover .post-title { color: var(--tad-navy); }
.tad-archive-grid .is-divider { display: none; }
.tad-archive-grid .post-meta { margin-bottom: 6px; color: var(--tad-muted); font-size: 13px; }
.tad-archive-grid .from_the_blog_excerpt { margin: 0; color: var(--tad-muted); font-size: 14px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 549px) { .tad-archive-head__box { padding: 18px; } }

/* ---------- Mô tả danh mục sản phẩm: giữ dấu đầu dòng ---------- */
.tad-catdesc__body ul, .tad-catdesc__body ol { margin: 0 0 1em; padding-left: 1.4em; }
.tad-catdesc__body ul { list-style: disc; }
.tad-catdesc__body ol { list-style: decimal; }
.tad-catdesc__body li { display: list-item; list-style: inherit; margin: 0 0 .4em !important; }
.tad-catdesc__body li::marker { color: var(--tad-navy); }

/* ---------- Bộ lọc sidebar cửa hàng ---------- */
#shop-sidebar .is-divider { display: none; }
#shop-sidebar .widget-title { display: block; margin-bottom: 12px; }
/* Dạng chip (dung tích, kiểu dáng) */
.widget.tad-filter--chips ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; }
.widget.tad-filter--chips li { margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none; }
.widget.tad-filter--chips li .count { display: none; }
.widget.tad-filter--chips li a { display: inline-flex; align-items: center; gap: 4px; height: 32px; padding: 0 11px; border: 1px solid var(--tad-line); border-radius: 8px; background: #fff; color: var(--tad-ink); font-size: 13.5px; font-weight: 600; line-height: 1; transition: border-color .15s, color .15s, background-color .15s; }
.widget.tad-filter--chips li a::before { display: none !important; }
.widget.tad-filter--chips li a:hover { border-color: var(--tad-navy); color: var(--tad-navy); }
.widget.tad-filter--chips li.chosen a { background: var(--tad-navy); border-color: var(--tad-navy); color: #fff; }
.widget.tad-filter--chips li.chosen a::after { content: "×"; margin-left: 2px; font-size: 15px; opacity: .85; }
.widget.tad-filter--chips ul.is-collapsed .tad-filter__more { display: none; }
.tad-filter__toggle { display: inline-flex; align-items: center; gap: 6px; min-height: 0; margin: 10px 0 0; padding: 0; border: 0; background: none; color: var(--tad-navy); font-size: 13.5px; font-weight: 600; line-height: 1.4; text-transform: none; letter-spacing: 0; cursor: pointer; }
.tad-filter__toggle::after { content: ""; width: 7px; height: 7px; margin-top: -3px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s; }
.tad-filter__toggle[aria-expanded="true"]::after { margin-top: 3px; transform: rotate(-135deg); }
/* Dạng ô tích (chất liệu, thương hiệu) */
.widget.tad-filter--check ul { margin: 0; padding: 0; }
.widget.tad-filter--check li { display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none; }
.widget.tad-filter--check li a { flex: 1; display: flex; align-items: center; gap: 10px; padding: 7px 0; color: var(--tad-ink); font-size: 14.5px; line-height: 1.3; }
.widget.tad-filter--check li a::before { content: "" !important; width: 18px; height: 18px; flex-shrink: 0; margin: 0 !important; border: 1.5px solid #b9c6da; border-radius: 5px; background: #fff; transition: border-color .15s, background-color .15s; }
.widget.tad-filter--check li a:hover { color: var(--tad-navy); }
.widget.tad-filter--check li a:hover::before { border-color: var(--tad-navy); }
.widget.tad-filter--check li.chosen a { color: var(--tad-navy); font-weight: 600; }
.widget.tad-filter--check li.chosen a::before { border-color: var(--tad-navy); background: var(--tad-navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 12px no-repeat; }
.widget.tad-filter--check li .count { flex-shrink: 0; color: var(--tad-muted); font-size: 12px; }
/* Lọc theo giá: thanh trượt tách khỏi tiêu đề và dòng nút */
.widget_price_filter .price_slider_wrapper { padding-top: 0; }
.widget_price_filter .price_slider.ui-slider { position: relative; height: 4px !important; margin: 20px 9px 22px !important; border: 0 !important; border-radius: 99px; background: var(--tad-line) !important; }
.widget_price_filter .ui-slider .ui-slider-range { top: 0; height: 100% !important; border-radius: 99px; background: linear-gradient(90deg, var(--tad-navy), var(--tad-cyan)) !important; }
.widget_price_filter .ui-slider .ui-slider-handle { top: 50% !important; width: 20px !important; height: 20px !important; margin: -10px 0 0 -10px !important; border: 3px solid var(--tad-navy) !important; border-radius: 50% !important; background: #fff !important; box-shadow: 0 1px 4px rgba(16, 35, 63, .25) !important; cursor: grab; outline: 0; }
.widget_price_filter .ui-slider .ui-slider-handle:active { cursor: grabbing; }
.widget_price_filter .ui-slider .ui-slider-handle:focus-visible { box-shadow: 0 0 0 4px rgba(0, 160, 227, .25) !important; }
.widget_price_filter .price_slider_amount { display: flex; flex-direction: column; align-items: stretch; gap: 12px; text-align: left; }
.widget_price_filter .price_slider_amount .clear { display: none; }
.widget_price_filter .price_label { order: 1; float: none !important; padding: 8px 12px; border-radius: 8px; background: var(--tad-bg); color: var(--tad-muted); font-size: 13.5px; text-align: center; }
.widget_price_filter .price_label span { color: var(--tad-ink); font-weight: 700; }
.widget_price_filter .price_slider_amount .button { order: 2; float: none !important; width: 100%; height: 38px; min-height: 0; margin: 0 !important; padding: 0 18px; border: 0; border-radius: 8px; background: var(--tad-navy) !important; color: #fff !important; font-size: 14px; line-height: 38px; }
.widget_price_filter .price_slider_amount .button:hover { background: var(--tad-navy-dark) !important; }

/* ---------- Mega menu "Sản phẩm" (UX Block: lưới danh mục + cột CTA) ---------- */
.nav-dropdown .tad-mega-row { width: 100%; max-width: none; margin: 0 !important; padding: 8px 6px 2px; }
.nav-dropdown .tad-mega-row > .col { padding-bottom: 0; }
.nav-dropdown .tad-mega a { text-transform: none; letter-spacing: 0; }
.tad-mega { display: grid; grid-template-columns: repeat(var(--tad-cols, 4), minmax(0, 1fr)); gap: 4px 6px; }
.tad-mega__item { min-width: 0; padding: 12px; border-radius: 12px; transition: background-color .15s; }
.tad-mega__item:hover { background: var(--tad-bg); }
.nav-dropdown .tad-mega__head { display: flex; align-items: center; gap: 12px; padding: 0; color: var(--tad-ink); }
.tad-mega__img { width: 56px; height: 56px; flex-shrink: 0; display: grid; place-items: center; overflow: hidden; border-radius: 12px; background: linear-gradient(180deg, #f3f6fb, #e6edf8); }
.tad-mega__img img { width: 82%; height: 82%; object-fit: contain; mix-blend-mode: multiply; transition: transform .25s ease; }
.tad-mega__item:hover .tad-mega__img img { transform: scale(1.08); }
.tad-mega__name { display: flex; flex-direction: column; min-width: 0; }
.tad-mega__name strong { color: var(--tad-ink); font-size: 15px; line-height: 1.3; transition: color .15s; }
.tad-mega__head:hover .tad-mega__name strong { color: var(--tad-navy); }
.tad-mega__name small { margin-top: 2px; color: var(--tad-muted); font-size: 12.5px; }
.nav-dropdown .tad-mega .tad-mega__sub { margin: 6px 0 0 68px !important; padding: 0 !important; }
.tad-mega__sub li { margin: 0 !important; list-style: none; }
.nav-dropdown .tad-mega__sub a { display: block; padding: 3px 0; color: var(--tad-text); font-size: 13.5px; line-height: 1.4; transition: color .15s, transform .15s; }
.nav-dropdown .tad-mega__sub a:hover { color: var(--tad-navy); transform: translateX(2px); }
.nav-dropdown .tad-mega__more a { color: var(--tad-navy); font-weight: 600; }
.nav-dropdown .tad-mega__all { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; border: 1.5px dashed #c7d5ea; color: var(--tad-navy); }
.tad-mega__all > span { width: 40px; height: 40px; margin-bottom: 4px; display: grid; place-items: center; border-radius: 10px; background: rgba(11, 77, 162, .08); }
.tad-mega__all strong { font-size: 15px; }
.tad-mega__all small { color: var(--tad-muted); font-size: 12.5px; line-height: 1.4; }
.nav-dropdown .tad-mega__all:hover { border-color: var(--tad-navy); background: #f3f7fd; }
.tad-mega-promo .tad-card { height: 100%; padding: 22px; border-radius: 14px; }
.tad-mega-promo__eyebrow { color: #7fd6ff; font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.tad-mega-promo h3 { margin: 6px 0 8px; font-size: 19px; line-height: 1.3; }
.tad-mega-promo p { font-size: 14px; line-height: 1.55; }
.nav-dropdown .tad-mega-promo .button { margin: 4px 0 12px; color: var(--tad-navy) !important; text-transform: none; }
.tad-mega-promo__tel { margin: 0; }
.nav-dropdown .tad-mega-promo__tel a { color: #fff; font-weight: 700; }

/* ---------- Widget danh mục sản phẩm (đồng bộ với bộ lọc bên dưới) ---------- */
.widget.widget_product_categories ul.product-categories { margin: 0; padding: 0; }
.widget.widget_product_categories ul li { position: relative; display: flex; flex-wrap: wrap; align-items: center; margin: 0 !important; padding: 0 !important; border: 0 !important; list-style: none; }
.widget.widget_product_categories ul li > a { flex: 1 1 0%; min-width: 0; display: block; padding: 8px 10px !important; border-radius: 8px; color: var(--tad-ink); font-size: 14.5px; font-weight: 600; line-height: 1.35; transition: background-color .15s, color .15s; }
.widget.widget_product_categories ul li > a:hover { background: var(--tad-bg); color: var(--tad-navy); }
.widget.widget_product_categories ul li > .count { flex-shrink: 0; align-self: center; display: inline-block; min-width: 26px; height: 22px; margin: 0 0 0 4px !important; padding: 0 8px !important; border-radius: 99px; background: var(--tad-bg); color: var(--tad-muted); font-size: 12px !important; font-weight: 700; line-height: 22px !important; text-align: center; vertical-align: middle; opacity: 1; position: static; }
.widget.widget_product_categories ul li > .toggle { position: static; flex-shrink: 0; width: 28px; height: 28px; min-height: 0; margin: 0 0 0 2px; padding: 0; border-radius: 8px; color: var(--tad-muted); opacity: 1; }
.widget.widget_product_categories ul li > .toggle:hover { background: var(--tad-bg); color: var(--tad-navy); }
.widget.widget_product_categories ul li > .toggle i { font-size: 14px; transition: transform .2s; }
.widget.widget_product_categories ul .children { flex-basis: 100%; margin: 2px 0 6px 12px !important; padding: 0 0 0 8px !important; border-left: 2px solid var(--tad-line); }
.widget.widget_product_categories ul .children li > a { font-size: 14px; font-weight: 500; color: var(--tad-text); padding: 6px 10px !important; }
.widget.widget_product_categories ul li.current-cat > a { background: rgba(11, 77, 162, .08); color: var(--tad-navy); }
.widget.widget_product_categories ul li.current-cat > .count { background: var(--tad-navy); color: #fff; }

/* ---------- Menu trượt mobile ---------- */
.off-canvas-left .mfp-content { width: min(340px, 88vw); }
.off-canvas:not(.off-canvas-center) .mfp-content { background-color: #fff; box-shadow: 6px 0 30px rgba(16, 35, 63, .18); }
.off-canvas .sidebar-menu { padding-top: 14px; }
.off-canvas .nav-sidebar > li { border-top: 0 !important; }
.off-canvas .nav-sidebar > li.header-search-form { padding: 0 16px 10px; margin-bottom: 0; }
.off-canvas .nav-sidebar > li.header-search-form + li { margin-top: 0; }
.off-canvas .nav-sidebar > li.menu-item { border-bottom: 1px solid var(--tad-line) !important; }
.off-canvas .nav-sidebar > li.menu-item > a { display: flex; align-items: center; gap: 12px; min-height: 54px; padding: 10px 16px !important; color: var(--tad-ink); font-size: 15px; font-weight: 600; text-transform: none; letter-spacing: 0; line-height: 1.3; }
.tad-mnav__media { width: 34px; height: 34px; flex-shrink: 0; display: grid; place-items: center; overflow: hidden; border-radius: 10px; background: var(--tad-bg); color: var(--tad-navy); }
.tad-mnav__media img { width: 84%; height: 84%; object-fit: contain; mix-blend-mode: multiply; }
.tad-mnav__text { flex: 1; min-width: 0; }
.off-canvas .nav-sidebar > li.menu-item > .toggle { width: 32px; height: 32px; min-height: 0; margin: 0 12px 0 0; padding: 0; display: grid; place-items: center; border-radius: 50% !important; background: var(--tad-bg); color: var(--tad-ink); opacity: 1; transition: background-color .15s, color .15s, transform .2s; }
.off-canvas .nav-sidebar > li.menu-item > .toggle i { font-size: 14px; margin: 0; transition: transform .2s; }
.off-canvas .nav-sidebar > li.menu-item.active > .toggle { background: var(--tad-navy); color: #fff; }
.off-canvas .nav-sidebar > li.menu-item.active > a { color: var(--tad-navy); }
.off-canvas .nav-sidebar .sub-menu { flex-basis: 100%; margin: 0; padding: 4px 0 8px !important; background: #f7f9fd; }
.off-canvas .nav-sidebar .sub-menu li { margin: 0; border: 0 !important; }
.off-canvas .nav-sidebar .sub-menu li a { position: relative; display: block; padding: 9px 16px 9px 62px !important; color: var(--tad-text); font-size: 14.5px; font-weight: 500; text-transform: none; }
.off-canvas .nav-sidebar .sub-menu li a::before { content: ""; position: absolute; left: 46px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: #b9c6da; }
.off-canvas .nav-sidebar .sub-menu li.current-menu-item > a { color: var(--tad-navy); font-weight: 600; }
.off-canvas .nav-sidebar .sub-menu li.current-menu-item > a::before { background: var(--tad-navy); }
.off-canvas .nav-sidebar > li.current-menu-item, .off-canvas .nav-sidebar > li.current-menu-ancestor { box-shadow: inset 3px 0 0 var(--tad-navy); background: rgba(11, 77, 162, .05); }
.off-canvas .nav-sidebar > li.current-menu-item > a, .off-canvas .nav-sidebar > li.current-menu-ancestor > a { color: var(--tad-navy); background: none; }
.off-canvas .nav-sidebar > li.account-item > a, .off-canvas .nav-sidebar > li.html.header-social-icons { padding: 12px 16px !important; }
/* 4 nút liên hệ nhanh */
.nav-sidebar .tad-hel--mobile-actions { padding: 2px 16px 14px; border-bottom: 1px solid var(--tad-line); }
.tad-mact { width: 100%; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.nav.nav-sidebar > li.tad-hel .tad-mact__btn { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 2px 9px; border-radius: 12px; background: var(--tad-bg); color: var(--tad-ink) !important; font-size: 12px; font-weight: 600; line-height: 1.2; text-align: center; text-transform: none; white-space: nowrap; letter-spacing: -.01em; }
.tad-mact__icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: #fff; color: var(--tad-navy); box-shadow: 0 1px 3px rgba(16, 35, 63, .12); }
.tad-mact__btn--call .tad-mact__icon { background: var(--tad-red); color: #fff; }
.tad-mact__btn--zalo .tad-mact__icon { background: transparent; box-shadow: none; }
.tad-mact__btn--zalo .tad-mact__icon .tad-icon--zalo { width: 38px; height: 38px; }

/* ---------- Tin tức: bài nổi bật ---------- */
.tad-featured { display: grid; grid-template-columns: 1.15fr 1fr; margin: 0 0 24px; overflow: hidden; border-radius: 16px; background: #fff; box-shadow: var(--tad-shadow); transition: box-shadow .2s; }
.tad-featured:hover { box-shadow: var(--tad-shadow-hover); }
.tad-featured__img { position: relative; display: block; min-height: 300px; overflow: hidden; background: var(--tad-bg); }
.tad-featured__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.tad-featured:hover .tad-featured__img img { transform: scale(1.03); }
.tad-featured__body { display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 28px 30px; }
.tad-featured__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; color: var(--tad-muted); font-size: 13px; }
.tad-featured__badge { padding: 3px 10px; border-radius: 99px; background: var(--tad-red); color: #fff; font-size: 12px; font-weight: 700; }
.tad-featured__meta a { color: var(--tad-navy); font-weight: 600; }
.tad-featured__title { margin: 0; font-size: clamp(20px, 2.2vw, 26px); line-height: 1.3; }
.tad-featured__title a { color: var(--tad-ink); }
.tad-featured__title a:hover { color: var(--tad-navy); }
.tad-featured__excerpt { margin: 0; color: var(--tad-muted); font-size: 15px; line-height: 1.6; }
.tad-featured__more { display: inline-flex; align-items: center; gap: 6px; color: var(--tad-navy); font-weight: 700; }
.tad-featured__more svg { transition: transform .2s; }
.tad-featured__more:hover svg { transform: translateX(3px); }
@media (max-width: 849px) {
	.tad-featured { grid-template-columns: 1fr; }
	.tad-featured__img { min-height: 0; aspect-ratio: 16 / 9; }
	.tad-featured__body { padding: 18px; }
}
.widget.widget_product_categories ul.product-categories > li:not(.cat-parent) > .count { margin-right: 30px !important; }

/* ---------- Cột phải trang sản phẩm = sidebar "Thanh bên sản phẩm" (widget UX Block) ---------- */
.tad-aside > .widget { margin: 0; padding: 0; background: none; box-shadow: none; border: 0; }
.tad-aside > .widget > .widget-title, .tad-aside > .widget > .is-divider { display: none; }
@media (max-width: 849px) {
	.tad-aside > .widget { display: contents; }
	.tad-aside .tad-aside__box:first-of-type { grid-column: 1 / -1; }
}
/* Flatsome tô màu chữ cho mọi link trong .widget → giữ màu riêng của cột phải */
.tad-aside .widget a.tad-aside__phone { color: var(--tad-red); }
.tad-aside .widget a.tad-aside__phone:hover { color: var(--tad-navy); }
.tad-aside .widget .tad-aside__project .button { color: var(--tad-navy); }
.tad-aside .widget .tad-aside__project .button:hover { color: #fff; }
/* Cột phải cố định khi cuộn (desktop); mobile bỏ lớp bọc sticky để giữ lưới 2 cột */
@media (max-width: 849px) {
	.tad-product__aside > .is-sticky-column, .tad-product__aside .is-sticky-column__inner { display: contents; }
}

/* ---------- Mạng xã hội: màu thương hiệu ---------- */
.tad-social { flex-wrap: wrap; gap: 10px; }
.tad-social__item { width: 40px; height: 40px; color: #fff !important; box-shadow: 0 4px 12px rgba(0, 0, 0, .18); transition: transform .2s ease, box-shadow .2s ease, filter .2s ease; }
.tad-social__item:hover { transform: translateY(-3px); box-shadow: 0 8px 18px rgba(0, 0, 0, .28); filter: brightness(1.08); }
.tad-social__item--facebook { background: #1877f2; }
.tad-social__item--messenger { background: radial-gradient(circle at 30% 107%, #ffdc80 0%, #ff6968 30%, #a334fa 60%, #0695ff 100%); }
.tad-social__item--youtube { background: #ff0000; }
.tad-social__item--tiktok { background: #010101; }
.tad-social__item--tiktok svg { filter: drop-shadow(1.5px 1px 0 #fe2c55) drop-shadow(-1.5px -1px 0 #25f4ee); }
.tad-social__item--zalo { background: transparent; box-shadow: 0 4px 12px rgba(0, 104, 255, .35); }
.tad-social__item--zalo svg { width: 40px; height: 40px; }

/* ---------- Trang chủ: khối gợi ý dung tích + báo giá dự án (điểm nhấn) ---------- */
.tad-home-calc { position: relative; overflow: hidden; padding-top: 48px !important; padding-bottom: 48px !important; background: linear-gradient(135deg, #083674 0%, var(--tad-navy) 45%, #0a6fd0 100%); }
.tad-home-calc::before, .tad-home-calc::after { content: ""; position: absolute; border-radius: 50%; pointer-events: none; }
.tad-home-calc::before { width: 520px; height: 520px; right: -160px; top: -220px; background: radial-gradient(circle, rgba(0, 160, 227, .35), rgba(0, 160, 227, 0) 70%); }
.tad-home-calc::after { width: 380px; height: 380px; left: -140px; bottom: -200px; background: radial-gradient(circle, rgba(255, 255, 255, .12), rgba(255, 255, 255, 0) 70%); }
.tad-home-calc .section-content { position: relative; z-index: 1; }
/* Thẻ máy tính */
.tad-home-calc .tad-calc { margin: 0; border: 0; border-radius: 18px; box-shadow: 0 24px 60px rgba(4, 24, 60, .35); }
.tad-home-calc .tad-calc__head { gap: 14px; padding: 20px 24px; background: #fff; border-bottom: 1px solid var(--tad-line); color: var(--tad-ink); font-size: clamp(17px, 1.6vw, 20px); line-height: 1.35; }
.tad-home-calc .tad-calc__head svg { width: 46px; height: 46px; padding: 11px; flex-shrink: 0; border-radius: 14px; background: linear-gradient(135deg, var(--tad-navy), var(--tad-cyan)); color: #fff; box-shadow: 0 6px 16px rgba(11, 77, 162, .3); }
.tad-home-calc .tad-calc__body { padding: 20px 24px 22px; }
.tad-home-calc .tad-calc__need { margin: 0 0 6px; padding: 14px 16px; border-radius: 12px; background: linear-gradient(90deg, #eaf2fd, #f5f9ff); font-size: 15.5px; }
.tad-home-calc .tad-calc__need strong:last-child { color: var(--tad-red); font-size: 1.25em; white-space: nowrap; }
.tad-home-calc .tad-calc__pick { font-size: 16px; }
.tad-home-calc .tad-calc__all { padding: 6px 12px; border-radius: 99px; background: rgba(11, 77, 162, .08); }
.tad-home-calc .tad-calc__all:hover { background: var(--tad-navy); color: #fff; }
/* Thẻ báo giá dự án trên nền xanh */
.tad-home-calc .tad-card { position: relative; padding: 30px 28px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 18px; background: rgba(255, 255, 255, .08); box-shadow: none; color: rgba(255, 255, 255, .86); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.tad-card__eyebrow { display: inline-block; margin-bottom: 10px; padding: 4px 12px; border-radius: 99px; background: rgba(127, 214, 255, .16); color: #7fd6ff; font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.tad-home-calc .tad-card h2 { margin-bottom: 10px; color: #fff; font-size: clamp(22px, 2.2vw, 28px); }
.tad-home-calc .tad-card p { color: rgba(255, 255, 255, .85); }
.tad-home-calc .tad-card .button { margin: 6px 0 0; padding: 0 22px; border: 0; background: var(--tad-red) !important; color: #fff !important; box-shadow: 0 8px 22px rgba(215, 25, 32, .4); line-height: 46px; }
.tad-home-calc .tad-card .button:hover { background: #b9141a !important; transform: translateY(-1px); }
@media (max-width: 849px) {
	.tad-home-calc { padding-top: 28px !important; padding-bottom: 28px !important; }
	.tad-home-calc .tad-calc__head, .tad-home-calc .tad-calc__body { padding-left: 16px; padding-right: 16px; }
	.tad-home-calc .tad-card { margin-top: 16px; padding: 22px 18px; }
}
.tad-hide { display: none !important; }

/* Stepper: Flatsome in CSS inline `button:not(.icon) { border-radius: … !important }` (Tùy biến › Nút)
   → phải !important để giữ nút tròn; flex: none để nút không bị co. */
.tad-calc__stepper button { flex: 0 0 36px !important; width: 36px !important; height: 36px !important; min-width: 36px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 50% !important; background: #fff !important; color: var(--tad-navy) !important; box-shadow: 0 1px 3px rgba(16, 35, 63, .14) !important; font-size: 20px !important; line-height: 1 !important; }
.tad-calc__stepper button:hover { background: var(--tad-navy) !important; color: #fff !important; }

/* Mega menu: danh mục con có dấu đầu dòng */
.nav-dropdown .tad-mega .tad-mega__sub li a { position: relative; padding-left: 14px; }
.nav-dropdown .tad-mega .tad-mega__sub li a::before { content: ""; position: absolute; left: 0; top: .78em; width: 5px; height: 5px; border-radius: 50%; background: #b9c6da; transition: background-color .15s, transform .15s; }
.nav-dropdown .tad-mega .tad-mega__sub li a:hover::before { background: var(--tad-cyan); transform: scale(1.4); }
.nav-dropdown .tad-mega .tad-mega__sub li.tad-mega__more a { padding-left: 14px; }
.nav-dropdown .tad-mega .tad-mega__sub li.tad-mega__more a::before { width: 8px; height: 2px; border-radius: 1px; top: .82em; background: var(--tad-navy); }

/* =================================================================
   Giỏ hàng / Thanh toán / Đặt hàng thành công / Tài khoản
   (template Flatsome: page-cart, page-checkout, page-my-account – inc/woo-pages.php)
   ================================================================= */
:root {
	--tad-i-grid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E");
	--tad-i-box: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 8 12 3 3 8v8l9 5 9-5z'/%3E%3Cpath d='m3 8 9 5 9-5M12 13v8'/%3E%3C/svg%3E");
	--tad-i-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");
	--tad-i-user: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21v-1a6 6 0 0 1 6-6h4a6 6 0 0 1 6 6v1'/%3E%3C/svg%3E");
	--tad-i-out: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' 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-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E");
	--tad-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}

/* ---------- Thanh các bước ---------- */
.checkout-page-title { padding-top: 22px !important; padding-bottom: 6px !important; background: none !important; border: 0 !important; }
.checkout-breadcrumbs { display: inline-flex !important; align-items: center; gap: 6px 4px; margin: 0 auto; padding: 10px 22px; border-radius: 999px; background: #fff; box-shadow: var(--tad-shadow); font-size: 15px !important; text-transform: none !important; letter-spacing: 0 !important; }
.checkout-page-title .page-title-inner, .checkout-page-title .flex-col { justify-content: center; }
.checkout-breadcrumbs a { display: inline-flex; align-items: center; gap: 8px; color: var(--tad-muted) !important; font-weight: 600; }
.checkout-breadcrumbs a.current { color: var(--tad-navy) !important; }
.checkout-breadcrumbs .breadcrumb-step { width: 26px; height: 26px; display: inline-grid !important; place-items: center; margin: 0; border-radius: 50%; background: var(--tad-line) !important; color: var(--tad-muted) !important; font-size: 13px; line-height: 1; }
.checkout-breadcrumbs a.current .breadcrumb-step { background: var(--tad-navy) !important; color: #fff !important; box-shadow: 0 0 0 4px rgba(11, 77, 162, .15); }
/* Bước đã qua: tích xanh */
.woocommerce-checkout .checkout-breadcrumbs a:first-of-type .breadcrumb-step,
.woocommerce-order-received .checkout-breadcrumbs a:not(.current) .breadcrumb-step { background: var(--tad-green) !important; color: transparent !important; -webkit-mask: none; position: relative; }
.woocommerce-checkout .checkout-breadcrumbs a:first-of-type .breadcrumb-step::after,
.woocommerce-order-received .checkout-breadcrumbs a:not(.current) .breadcrumb-step::after { content: ""; position: absolute; inset: 7px; background: #fff; -webkit-mask: var(--tad-i-check) center / contain no-repeat; mask: var(--tad-i-check) center / contain no-repeat; }
.woocommerce-checkout .checkout-breadcrumbs a:first-of-type { color: var(--tad-green) !important; }
.checkout-breadcrumbs .divider { margin: 0 6px; color: #b9c6da; }

/* ---------- Khung chung ---------- */
.cart-container.page-checkout { padding-top: 18px; padding-bottom: 36px; }
.woocommerce-cart-form, .woocommerce-checkout .woocommerce-billing-fields, .woocommerce-checkout .woocommerce-shipping-fields, .woocommerce-checkout .woocommerce-additional-fields,
.cart-collaterals .cart-sidebar, .woocommerce-checkout .col-inner.has-border,
.woocommerce-order-details, .woocommerce-customer-details, .woocommerce-bacs-bank-details {
	background: #fff; border: 0 !important; border-radius: 16px; box-shadow: var(--tad-shadow);
}
.woocommerce-cart .cart-collaterals .cart-sidebar, .woocommerce-checkout .col-inner.has-border { padding: 22px 22px 18px !important; }
.woocommerce-cart .col.large-7, .woocommerce-checkout .large-7 { border-right: 0 !important; }
.woocommerce-cart .is-divider, .woocommerce-checkout .is-divider { display: none; }

/* ---------- Giỏ hàng ---------- */
.woocommerce-cart-form { padding: 8px 20px 18px; }
.shop_table.cart thead th { padding: 14px 8px; border-bottom: 1px solid var(--tad-line) !important; color: var(--tad-muted); font-size: 13px; font-weight: 600; letter-spacing: 0; text-transform: none; }
.shop_table.cart td { padding: 16px 8px; border-bottom: 1px solid var(--tad-line) !important; vertical-align: middle; }
.shop_table.cart tr:last-child td { border-bottom: 0 !important; }
.shop_table.cart .product-thumbnail img { width: 76px; height: 76px; object-fit: contain; border-radius: 10px; background: var(--tad-bg); padding: 4px; }
.shop_table.cart .product-name a { color: var(--tad-ink); font-weight: 600; line-height: 1.4; }
.shop_table.cart .product-name a:hover { color: var(--tad-navy); }
.shop_table.cart .product-price .amount { color: var(--tad-muted); font-weight: 600; }
.shop_table.cart .product-subtotal .amount { color: var(--tad-red); font-weight: 800; }
.shop_table.cart a.remove { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--tad-line) !important; border-radius: 50%; color: var(--tad-muted) !important; font-size: 18px !important; line-height: 1; transition: all .15s; }
.shop_table.cart a.remove:hover { background: #fdecec !important; border-color: var(--tad-red) !important; color: var(--tad-red) !important; }
/* Ô số lượng dạng viên thuốc (giống stepper) */
.woocommerce .quantity.buttons_added, .woocommerce .ux-quantity { display: inline-flex; align-items: center; padding: 3px; border: 1px solid var(--tad-line); border-radius: 999px; background: var(--tad-bg); }
.woocommerce .ux-quantity .ux-quantity__button, .woocommerce .quantity .minus, .woocommerce .quantity .plus { width: 30px !important; height: 30px !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: #fff !important; color: var(--tad-navy) !important; box-shadow: 0 1px 2px rgba(16, 35, 63, .12); font-size: 16px; }
.woocommerce .ux-quantity .ux-quantity__button:hover { background: var(--tad-navy) !important; color: #fff !important; }
.woocommerce .ux-quantity input.qty, .woocommerce .quantity input.qty { width: 40px !important; height: 30px !important; min-height: 0; margin: 0; padding: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; font-weight: 700; color: var(--tad-ink); }
.woocommerce-cart-form .actions { padding-top: 18px !important; }
.woocommerce-cart-form .continue-shopping .button, .woocommerce-cart-form button[name="update_cart"] { min-height: 42px; border-radius: 10px !important; text-transform: none; letter-spacing: 0; }
.woocommerce-cart-form button[name="update_cart"] { background: var(--tad-navy) !important; color: #fff !important; border: 0; }
.woocommerce-cart-form button[name="update_cart"]:disabled { opacity: .35; }
/* Tóm tắt đơn hàng */
.cart_totals > h2, .cart_totals table th.product-name, .cart-sidebar .cart_totals thead th { color: var(--tad-ink) !important; font-size: 17px !important; font-weight: 800; text-transform: none !important; letter-spacing: 0 !important; border: 0 !important; }
.cart_totals table th, .cart_totals table td { padding: 12px 0; border-color: var(--tad-line) !important; text-transform: none; letter-spacing: 0; font-size: 14.5px; }
.cart_totals .order-total th, .cart_totals .order-total td { border-top: 1px dashed var(--tad-line) !important; padding-top: 16px; }
.cart_totals .order-total .amount { color: var(--tad-red); font-size: 22px; font-weight: 800; }
.woocommerce-shipping-destination, .woocommerce-shipping-calculator a { font-size: 13px; color: var(--tad-muted); }
.wc-proceed-to-checkout { padding: 6px 0 4px; }
.wc-proceed-to-checkout .checkout-button, #place_order { width: 100%; min-height: 54px; margin: 6px 0 0 !important; border: 0 !important; border-radius: 12px !important; background: linear-gradient(135deg, var(--tad-red), #ec3a3f) !important; color: #fff !important; font-size: 17px !important; font-weight: 800; letter-spacing: 0; text-transform: none; box-shadow: 0 10px 24px rgba(215, 25, 32, .32); transition: transform .15s, box-shadow .15s; }
.wc-proceed-to-checkout .checkout-button:hover, #place_order:hover { transform: translateY(-1px); box-shadow: 0 14px 30px rgba(215, 25, 32, .38); }
#place_order:disabled, #place_order[disabled] { opacity: .55; transform: none; }
/* Mã ưu đãi gọn */
.cart-sidebar .coupon, .woocommerce-checkout .checkout_coupon { margin-top: 18px; padding: 14px; border: 1px dashed #c7d5ea; border-radius: 12px; background: #fafcff; }
.cart-sidebar .coupon h3, .cart-sidebar .coupon .widget-title { margin: 0 0 8px; font-size: 14px; text-transform: none; letter-spacing: 0; }
.cart-sidebar .coupon input.input-text, .woocommerce-checkout .checkout_coupon input.input-text { height: 42px; margin-bottom: 8px; border-radius: 10px; }
.cart-sidebar .coupon .button, .woocommerce-checkout .checkout_coupon .button { width: 100%; min-height: 40px; margin: 0; border-radius: 10px !important; background: #fff !important; border: 1px solid var(--tad-navy) !important; color: var(--tad-navy) !important; text-transform: none; }
.tad-trust { margin-top: 16px; }
.tad-trust .tad-aside__list li:last-child { margin-bottom: 0; }
.cart-sidebar .tad-trust__hotline, .woocommerce-checkout .tad-trust__hotline { margin-top: 10px; }
/* Giỏ trống */
.woocommerce-cart .cart-empty { margin: 10px 0 18px; padding: 26px; border-radius: 16px; background: #fff; box-shadow: var(--tad-shadow); text-align: center; font-size: 17px; color: var(--tad-ink); }
.woocommerce-cart .return-to-shop { text-align: center; margin-bottom: 26px; }
.woocommerce-cart .return-to-shop .button { min-height: 46px; padding: 0 26px; border-radius: 12px !important; background: var(--tad-red) !important; color: #fff !important; text-transform: none; }
.tad-cart-empty { margin-top: 10px; }

/* ---------- Thanh toán ---------- */
.woocommerce-checkout .woocommerce-billing-fields, .woocommerce-checkout .woocommerce-shipping-fields, .woocommerce-checkout .woocommerce-additional-fields { padding: 22px 22px 8px; margin-bottom: 16px; }
.woocommerce-checkout h3, #order_review_heading { margin: 0 0 14px; color: var(--tad-ink); font-size: 18px !important; font-weight: 800; text-transform: none !important; letter-spacing: 0 !important; }
.woocommerce-checkout .form-row label { margin-bottom: 6px; color: var(--tad-ink); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.woocommerce-checkout .form-row .required { color: var(--tad-red); text-decoration: none; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select, .woocommerce form .form-row textarea, .woocommerce-account form input.input-text {
	height: 48px; padding: 0 14px; border: 1px solid transparent; border-radius: 10px; background-color: #f1f4f9; box-shadow: none; color: var(--tad-ink); font-size: 15px; transition: background-color .15s, border-color .15s, box-shadow .15s;
}
.woocommerce form .form-row textarea { height: auto; min-height: 96px; padding-top: 12px; }
.woocommerce form .form-row input.input-text:hover, .woocommerce form .form-row textarea:hover { background-color: #eaeff6; }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row select:focus, .woocommerce form .form-row textarea:focus { background-color: #fff; border-color: var(--tad-cyan); box-shadow: 0 0 0 3px rgba(0, 160, 227, .14); outline: 0; }
.woocommerce form .form-row.woocommerce-invalid input.input-text { background-color: #fff5f5; border-color: var(--tad-red); }
.woocommerce-checkout #ship-to-different-address label { display: inline-flex; align-items: center; gap: 8px; font-size: 15px !important; font-weight: 600; text-transform: none; }
.woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom: 14px; padding: 12px 16px; border: 1px dashed #c7d5ea; border-radius: 12px; background: #fafcff; font-size: 14px; }
/* Đơn hàng của bạn: dính khi cuộn */
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding: 10px 0; border-color: var(--tad-line) !important; font-size: 14px; text-transform: none; letter-spacing: 0; }
.woocommerce-checkout-review-order-table thead th { color: var(--tad-muted); font-size: 12.5px; font-weight: 600; }
.woocommerce-checkout-review-order-table .cart_item td { color: var(--tad-ink); opacity: 1 !important; }
.woocommerce-checkout-review-order-table .product-quantity { color: var(--tad-navy); }
.woocommerce-checkout-review-order-table .order-total .amount { color: var(--tad-red); font-size: 22px; font-weight: 800; }
/* Phương thức thanh toán dạng thẻ chọn */
#payment { background: none !important; }
#payment .wc_payment_methods { margin: 14px 0 6px !important; padding: 0 !important; border: 0 !important; }
#payment .wc_payment_method { margin: 0 0 8px !important; padding: 12px 14px !important; border: 1.5px solid var(--tad-line) !important; border-radius: 12px; list-style: none; transition: border-color .15s, background-color .15s; }
#payment .wc_payment_method:has(input:checked) { border-color: var(--tad-navy) !important; background: #f3f7fd; }
#payment .wc_payment_method > label { display: inline; font-size: 14.5px; font-weight: 700; color: var(--tad-ink); }
#payment .wc_payment_method input[type="radio"] { accent-color: var(--tad-navy); margin-right: 6px; }
#payment .payment_box { margin: 8px 0 0 !important; padding: 0 !important; background: none !important; color: var(--tad-muted); font-size: 13.5px; }
#payment .payment_box::before { display: none !important; }
.woocommerce-terms-and-conditions-wrapper { margin: 10px 0 4px; font-size: 13.5px; }
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox { display: flex; gap: 8px; align-items: flex-start; font-weight: 500; text-transform: none; }
.woocommerce-checkout .blockUI.blockOverlay { border-radius: 16px; }

/* ---------- Đặt hàng thành công ---------- */
.woocommerce-order { margin-top: 6px; }
.woocommerce-order > .large-5 .is-well { position: relative; padding: 26px 24px 20px !important; border: 0 !important; border-radius: 16px; background: #fff !important; box-shadow: 0 18px 44px rgba(16, 35, 63, .12); overflow: hidden; }
.woocommerce-order > .large-5 .is-well::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(90deg, var(--tad-green), #2fd17a); }
.woocommerce-thankyou-order-received { display: flex; align-items: center; gap: 12px; margin: 0 0 16px !important; color: var(--tad-ink) !important; font-size: 18px !important; font-weight: 800; line-height: 1.35; }
.woocommerce-thankyou-order-received::before { content: ""; width: 48px; height: 48px; flex-shrink: 0; border-radius: 50%; box-shadow: 0 0 0 6px rgba(18, 161, 80, .14);
	background: var(--tad-green) url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27white%27 stroke-width=%273%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M20 6 9 17l-5-5%27/%3E%3C/svg%3E") center / 24px no-repeat; }
.woocommerce-order-overview { margin: 0 !important; padding: 0 !important; }
.woocommerce-order-overview li { display: flex; justify-content: space-between; gap: 12px; margin: 0 !important; padding: 10px 0 !important; border-bottom: 1px dashed var(--tad-line); list-style: none; color: var(--tad-muted); font-size: 13.5px; text-transform: none; }
.woocommerce-order-overview li:last-child { border-bottom: 0; }
.woocommerce-order-overview li strong { color: var(--tad-ink); font-size: 14.5px; text-align: right; }
.woocommerce-order-overview .total strong .amount { color: var(--tad-red); font-size: 18px; }
@media (min-width: 850px) { .woocommerce-order > .large-5 .is-well { position: sticky; top: calc(var(--flatsome-scroll-padding-top, 90px) + 14px); } }
@media (max-width: 849px) { .woocommerce-order > .large-5 { order: -1; } }
/* Thông tin chuyển khoản */
.woocommerce-order > .large-7 > p:first-child { padding: 14px 16px; border-left: 4px solid var(--tad-cyan); border-radius: 0 12px 12px 0; background: #f2f9fe; color: var(--tad-text); }
.woocommerce-bacs-bank-details { margin-bottom: 22px; padding: 20px 22px; }
.wc-bacs-bank-details-heading { margin: 0 0 6px; font-size: 18px; }
.wc-bacs-bank-details-account-name { margin: 0 0 10px; color: var(--tad-muted); font-size: 14px !important; font-weight: 600; }
.woocommerce-bacs-bank-details ul.bacs_details { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; margin: 0; padding: 0; }
.woocommerce-bacs-bank-details ul.bacs_details li { margin: 0 !important; padding: 12px 14px; border-radius: 12px; background: var(--tad-bg); list-style: none; color: var(--tad-muted); font-size: 13px; }
.woocommerce-bacs-bank-details ul.bacs_details li strong { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 2px; color: var(--tad-ink); font-size: 16px; }
.tad-copy { flex-shrink: 0; min-height: 0; margin: 0; padding: 4px 10px; border: 1px solid var(--tad-navy) !important; border-radius: 99px !important; background: #fff !important; color: var(--tad-navy) !important; font-size: 12px; font-weight: 700; line-height: 1.4; text-transform: none; letter-spacing: 0; }
.tad-copy.is-done { border-color: var(--tad-green) !important; color: var(--tad-green) !important; }
/* Các bước tiếp theo */
.tad-thanks { margin: 0 0 24px; padding: 22px; border-radius: 16px; background: linear-gradient(135deg, #f2f7ff, #fff); border: 1px solid var(--tad-line); }
.tad-thanks .tad-sechead h3 { font-size: 19px; }
.tad-thanks .tad-steps { margin-top: 20px; }
.tad-thanks .tad-step { box-shadow: 0 1px 2px rgba(16, 35, 63, .05); }
.tad-thanks__actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 0; }
.tad-thanks__actions .button { margin: 0 !important; text-transform: none; }
/* Chi tiết đơn + địa chỉ */
.woocommerce-order-details, .woocommerce-customer-details { margin-bottom: 20px; padding: 20px 22px; }
.woocommerce-order-details__title, .woocommerce-column__title { margin: 0 0 10px; font-size: 18px !important; }
.woocommerce-table--order-details th, .woocommerce-table--order-details td { padding: 10px 0; border-color: var(--tad-line) !important; font-size: 14px; text-transform: none; letter-spacing: 0; }
.woocommerce-table--order-details tfoot tr:nth-last-child(2) .amount { color: var(--tad-red); font-size: 18px; font-weight: 800; }
.woocommerce-customer-details .col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.woocommerce-customer-details .col2-set > .col-1, .woocommerce-customer-details .col2-set > .col-2 { width: auto !important; float: none !important; padding: 0 !important; }
.woocommerce-customer-details address { padding: 14px 16px; border: 0; border-radius: 12px; background: var(--tad-bg); font-style: normal; line-height: 1.7; color: var(--tad-text); }
@media (max-width: 549px) { .woocommerce-customer-details .col2-set { grid-template-columns: 1fr; } }

/* ---------- Tài khoản ---------- */
.my-account-header.page-title { background: linear-gradient(135deg, #eaf2fd, #fff) !important; border-bottom: 1px solid var(--tad-line); }
.my-account-header .page-title-inner h1 { text-transform: none; letter-spacing: 0; }
.my-account-header .page-title-inner small, .my-account-header .breadcrumbs { text-transform: none; letter-spacing: 0; }
.page-wrapper.my-account { padding-top: 26px; }
.my-account .vertical-tabs > .large-3 { border-right: 0 !important; }
.my-account .vertical-tabs > .large-3 .account-user, .my-account .woocommerce-MyAccount-navigation { background: #fff; box-shadow: var(--tad-shadow); }
.my-account .account-user { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; padding: 16px; border-radius: 16px; }
.my-account .account-user .image { margin: 0 !important; }
.my-account .account-user img.avatar { width: 52px; height: 52px; border-radius: 50%; box-shadow: 0 0 0 3px #fff, 0 0 0 5px rgba(11, 77, 162, .18); }
.my-account .account-user .user-name { font-weight: 700; color: var(--tad-ink); }
.my-account .woocommerce-MyAccount-navigation { padding: 8px; border-radius: 16px; }
.my-account .account-nav { margin: 0 !important; }
.my-account .account-nav > li { margin: 0 !important; border: 0 !important; }
.my-account .account-nav > li > a, .dashboard-links li a { display: flex !important; align-items: center; gap: 12px; padding: 11px 12px !important; border-radius: 10px; color: var(--tad-text) !important; font-size: 15px; font-weight: 600; text-transform: none !important; letter-spacing: 0; transition: background-color .15s, color .15s; }
.my-account .account-nav > li > a::after { display: none !important; }
.my-account .account-nav > li > a::before, .dashboard-links li a::before { content: ""; width: 20px; height: 20px; flex-shrink: 0; background: currentColor; opacity: .75; -webkit-mask: var(--tad-i, var(--tad-i-grid)) center / contain no-repeat; mask: var(--tad-i, var(--tad-i-grid)) center / contain no-repeat; }
.my-account .account-nav > li > a:hover { background: var(--tad-bg); color: var(--tad-navy) !important; }
.my-account .account-nav > li.is-active > a, .my-account .account-nav > li.active > a { background: rgba(11, 77, 162, .08); color: var(--tad-navy) !important; }
.my-account .account-nav > li.is-active > a::before { opacity: 1; }
.woocommerce-MyAccount-navigation-link--dashboard { --tad-i: var(--tad-i-grid); }
.woocommerce-MyAccount-navigation-link--orders { --tad-i: var(--tad-i-box); }
.woocommerce-MyAccount-navigation-link--edit-address { --tad-i: var(--tad-i-pin); }
.woocommerce-MyAccount-navigation-link--edit-account { --tad-i: var(--tad-i-user); }
.woocommerce-MyAccount-navigation-link--customer-logout { --tad-i: var(--tad-i-out); }
.my-account .account-nav > li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 6px !important; padding-top: 6px !important; border-top: 1px solid var(--tad-line) !important; }
.my-account .account-nav > li.woocommerce-MyAccount-navigation-link--customer-logout > a:hover { background: #fdecec; color: var(--tad-red) !important; }
.woocommerce-MyAccount-content { padding: 24px 26px; border-radius: 16px; background: #fff; box-shadow: var(--tad-shadow); }
.woocommerce-MyAccount-content > p:first-of-type { font-size: 17px; color: var(--tad-ink); }
/* Ô lối tắt ở trang tổng quan */
.dashboard-links { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px; margin: 20px 0 0 !important; padding: 0 !important; }
.dashboard-links li { width: auto !important; margin: 0 !important; padding: 0 !important; list-style: none; }
.dashboard-links li a { flex-direction: column; align-items: flex-start; height: 100%; padding: 18px !important; border: 1px solid var(--tad-line) !important; border-radius: 14px !important; background: #fff; font-size: 16px !important; }
.dashboard-links li a::before { width: 40px; height: 40px; padding: 10px; box-sizing: border-box; border-radius: 12px; background: var(--tad-navy); opacity: 1; -webkit-mask: none; mask: none; background-image: none; }
.dashboard-links li a { position: relative; }
.dashboard-links li a::after { content: ""; position: absolute; left: 28px; top: 28px; width: 20px; height: 20px; background: #fff; -webkit-mask: var(--tad-i, var(--tad-i-grid)) center / contain no-repeat; mask: var(--tad-i, var(--tad-i-grid)) center / contain no-repeat; }
.dashboard-links li a:hover { border-color: var(--tad-navy) !important; box-shadow: var(--tad-shadow-hover); color: var(--tad-navy) !important; transform: translateY(-2px); }
.dashboard-links li.woocommerce-MyAccount-navigation-link--customer-logout a::before { background: var(--tad-red); }
/* Form trong tài khoản */
.woocommerce-MyAccount-content form .form-row label, .woocommerce-account .woocommerce-form label { color: var(--tad-ink); font-size: 14px; font-weight: 600; text-transform: none; letter-spacing: 0; }
.woocommerce-MyAccount-content fieldset { margin: 18px 0 0; padding: 18px; border: 1px solid var(--tad-line); border-radius: 14px; }
.woocommerce-MyAccount-content fieldset legend { padding: 0 8px; color: var(--tad-ink); font-weight: 800; text-transform: none; }
.woocommerce-MyAccount-content form .button, .woocommerce-account .woocommerce-form .button { min-height: 46px; padding: 0 26px; border: 0; border-radius: 12px !important; background: var(--tad-red) !important; color: #fff !important; font-weight: 700; text-transform: none; letter-spacing: 0; }
.woocommerce-MyAccount-content .woocommerce-orders-table th, .woocommerce-MyAccount-content .woocommerce-orders-table td { padding: 12px 8px; text-transform: none; letter-spacing: 0; font-size: 14px; }
.woocommerce-MyAccount-content .woocommerce-orders-table .button { min-height: 34px; padding: 0 14px; font-size: 13px; }
.woocommerce-MyAccount-content .woocommerce-Addresses .col-1, .woocommerce-MyAccount-content .woocommerce-Addresses .col-2 { padding: 16px; border-radius: 14px; background: var(--tad-bg); }
.woocommerce-MyAccount-content address { font-style: normal; line-height: 1.7; }
/* Đăng nhập (khách chưa có phiên) */
.woocommerce-account:not(.logged-in) .woocommerce-form-login { max-width: 440px; margin: 10px auto 30px; padding: 26px; border: 0 !important; border-radius: 16px; background: #fff; box-shadow: var(--tad-shadow); }
.woocommerce-account:not(.logged-in) .account-container h3 { text-align: center; text-transform: none; letter-spacing: 0; }
@media (max-width: 849px) {
	.woocommerce-MyAccount-content { margin-top: 12px; padding: 18px; }
	.woocommerce-cart-form { padding: 4px 12px 14px; }
}
/* Form nhận hàng: xếp theo id trường bằng grid (JS address-i18n của WooCommerce sắp lại thứ tự,
   class form-row-first/last của Flatsome không còn đúng vị trí) */
.woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.woocommerce-billing-fields__field-wrapper > .form-row { grid-column: 1 / -1; width: auto !important; float: none !important; margin: 0 0 14px !important; padding: 0 !important; }
.woocommerce-billing-fields__field-wrapper > #billing_first_name_field { order: 1; grid-column: auto; }
.woocommerce-billing-fields__field-wrapper > #billing_phone_field { order: 2; grid-column: auto; }
.woocommerce-billing-fields__field-wrapper > #billing_address_1_field { order: 3; }
.woocommerce-billing-fields__field-wrapper > #billing_city_field { order: 4; grid-column: auto; }
.woocommerce-billing-fields__field-wrapper > #billing_email_field { order: 5; grid-column: auto; }
.woocommerce-billing-fields__field-wrapper > #billing_country_field { order: 9; }
@media (max-width: 549px) { .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; } .woocommerce-billing-fields__field-wrapper > .form-row { grid-column: 1 / -1 !important; } }
/* Ô số lượng: căn giữa dấu − / + */
.woocommerce .ux-quantity .ux-quantity__button { display: inline-flex !important; align-items: center; justify-content: center; line-height: 1 !important; text-align: center; font-weight: 700; }
/* Bỏ đường kẻ dọc giữa 2 cột (row-divided của Flatsome) */
.woocommerce-cart .row-divided > .col + .col, .woocommerce-checkout .row-divided > .col + .col, .woocommerce-cart .cart-collaterals, .woocommerce-checkout .large-5 { border-left: 0 !important; }
.woocommerce-cart-form button[name="update_cart"]:disabled { opacity: .55; background: #9fb3d1 !important; }

.woocommerce-checkout .checkout-sidebar { padding: 0 !important; background: none !important; box-shadow: none !important; border: 0 !important; }
.woocommerce-checkout .woocommerce-shipping-fields { padding: 14px 22px !important; }
.woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address { margin: 0; }
.tad-trust .tad-aside__list li { margin-bottom: 12px !important; }
/* Menu tài khoản: nav-line của Flatsome dùng ::before làm vạch đánh dấu (absolute) → ép về icon */
.my-account .account-nav.nav-line > li > a::before { position: static !important; display: block !important; width: 20px !important; height: 20px !important; margin: 0 !important; transform: none !important; border: 0 !important; background-color: currentColor !important; opacity: .75; transition: none; }
.my-account .account-nav.nav-line > li.is-active > a::before, .my-account .account-nav.nav-line > li.active > a::before { opacity: 1; }
.woocommerce-EditAccountForm label[for="account_last_name"] .required { display: none; }
.woocommerce-EditAccountForm em, .woocommerce-MyAccount-content .form-row em { display: block; margin-top: 6px; color: var(--tad-muted); font-size: 13px; font-style: normal; }
/* Flatsome in CSS inline `button:not(.icon) { border-radius: … !important }` SAU main.css, cùng độ ưu tiên (0,1,1)
   → cần selector mạnh hơn để giữ nút tròn / viên thuốc. */
.tad-calc .tad-calc__stepper button { border-radius: 50% !important; }
.woocommerce-bacs-bank-details button.tad-copy { border-radius: 99px !important; }
/* Giỏ trống (markup Flatsome: .wc-empty-cart-message .woocommerce-info) */
.wc-empty-cart-message .woocommerce-info { margin: 4px auto 22px; padding: 30px 20px 30px !important; border: 0 !important; border-radius: 16px; background: #fff !important; box-shadow: var(--tad-shadow); color: var(--tad-ink) !important; font-size: 18px; font-weight: 700; }
.wc-empty-cart-message .woocommerce-info::before { content: ""; display: block; width: 64px; height: 64px; margin: 0 auto 12px; border-radius: 50%; background: #eaf2fd; -webkit-mask: none; }
.wc-empty-cart-message .woocommerce-info .message-container::before { content: ""; display: block; width: 30px; height: 30px; margin: -64px auto 30px; background: var(--tad-navy); -webkit-mask: var(--tad-i-box) center / contain no-repeat; mask: var(--tad-i-box) center / contain no-repeat; }
.tad-cart-empty { margin: 0 0 22px; }
.woocommerce-cart .return-to-shop .button { min-height: 48px; padding: 0 30px; border-radius: 12px !important; background: var(--tad-red) !important; color: #fff !important; text-transform: none; letter-spacing: 0; box-shadow: 0 8px 20px rgba(215, 25, 32, .28); }
/* Thông báo WooCommerce (đã thêm / đã xoá / lỗi…) */
.woocommerce-message.message-wrapper, .woocommerce-info.message-wrapper:not(.wc-empty-cart-message *), .woocommerce-error.message-wrapper { margin-bottom: 16px; padding: 12px 16px !important; border: 0 !important; border-left: 4px solid var(--tad-green) !important; border-radius: 12px; background: #effaf3 !important; color: var(--tad-ink) !important; font-size: 15px; }
.woocommerce-info.message-wrapper:not(.wc-empty-cart-message *) { border-left-color: var(--tad-cyan) !important; background: #f2f9fe !important; }
.woocommerce-error.message-wrapper { border-left-color: var(--tad-red) !important; background: #fff4f4 !important; }
.message-wrapper .message-container { padding: 0 !important; }
.message-wrapper a:not(.button) { font-weight: 700; }

/* ---------- Form mã ưu đãi (checkout) ---------- */
.woocommerce-checkout form.checkout_coupon { margin: -4px 0 16px !important; padding: 14px !important; border: 1px dashed #b9cde9 !important; border-radius: 14px; background: #fafcff; }
.checkout_coupon .coupon .flex-row { align-items: stretch; gap: 10px; }
.checkout_coupon .coupon .flex-col { padding: 0 !important; }
.checkout_coupon input#coupon_code { height: 48px; margin: 0; padding: 0 16px; border: 1px solid transparent !important; border-radius: 10px; background: #fff; box-shadow: inset 0 0 0 1px var(--tad-line); font-size: 15px; letter-spacing: .02em; text-transform: uppercase; }
.checkout_coupon input#coupon_code::placeholder { text-transform: none; letter-spacing: 0; }
.checkout_coupon input#coupon_code:focus { border-color: var(--tad-cyan) !important; box-shadow: 0 0 0 3px rgba(0, 160, 227, .14); outline: 0; }
.woocommerce-checkout .checkout_coupon button[name="apply_coupon"] { height: 48px; min-height: 48px; margin: 0 !important; padding: 0 26px !important; border: 0 !important; border-radius: 10px !important; background: var(--tad-navy) !important; color: #fff !important; font-size: 15px; font-weight: 700; line-height: 48px; text-transform: none; letter-spacing: 0; white-space: nowrap; }
.woocommerce-checkout .checkout_coupon button[name="apply_coupon"]:hover { background: var(--tad-navy-dark) !important; }
@media (max-width: 549px) { .checkout_coupon .coupon .flex-row { flex-direction: column; } .woocommerce-checkout .checkout_coupon button[name="apply_coupon"] { width: 100%; } }

/* ---------- Ô tích (giao đến địa chỉ khác, đồng ý điều khoản, nhớ đăng nhập…) ---------- */
.woocommerce-form__label-for-checkbox.checkbox { display: inline-flex !important; align-items: flex-start; gap: 10px; margin: 0; cursor: pointer; font-weight: 600; line-height: 1.45; text-transform: none; letter-spacing: 0; }
.woocommerce-form__label-for-checkbox input[type="checkbox"] { -webkit-appearance: none; appearance: none; flex-shrink: 0; width: 20px; height: 20px; margin: 1px 0 0 !important; border: 1.5px solid #b9c6da; border-radius: 6px; background: #fff; cursor: pointer; transition: border-color .15s, background-color .15s, box-shadow .15s; }
.woocommerce-form__label-for-checkbox input[type="checkbox"]:hover { border-color: var(--tad-navy); }
.woocommerce-form__label-for-checkbox input[type="checkbox"]:focus-visible { box-shadow: 0 0 0 3px rgba(0, 160, 227, .2); outline: 0; }
.woocommerce-form__label-for-checkbox input[type="checkbox"]:checked { border-color: var(--tad-navy); background: var(--tad-navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 13px no-repeat; }
.woocommerce-invalid .woocommerce-form__label-for-checkbox input[type="checkbox"] { border-color: var(--tad-red); }
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox { font-weight: 500; font-size: 13.5px; color: var(--tad-text); }
.woocommerce-terms-and-conditions-wrapper .required { margin-left: 2px; color: var(--tad-red); }
.woocommerce-terms-and-conditions-wrapper .form-row { margin: 0; padding: 0; }

/* ---------- Giao đến địa chỉ khác ---------- */
.woocommerce-checkout .woocommerce-shipping-fields { padding: 16px 22px !important; }
.woocommerce-shipping-fields h3#ship-to-different-address { margin: 0 !important; font-size: 16px !important; }
.woocommerce-shipping-fields h3#ship-to-different-address label { font-size: 15.5px; font-weight: 700; color: var(--tad-ink); }
.woocommerce-shipping-fields .shipping_address { margin-top: 16px; padding-top: 16px; border-top: 1px dashed var(--tad-line); }
.woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.woocommerce-shipping-fields__field-wrapper > .form-row { grid-column: 1 / -1; width: auto !important; float: none !important; margin: 0 0 14px !important; padding: 0 !important; }
.woocommerce-shipping-fields__field-wrapper > #shipping_first_name_field { order: 1; grid-column: auto; }
.woocommerce-shipping-fields__field-wrapper > #shipping_phone_field { order: 2; grid-column: auto; }
.woocommerce-shipping-fields__field-wrapper > #shipping_address_1_field { order: 3; }
.woocommerce-shipping-fields__field-wrapper > #shipping_city_field { order: 4; }
.woocommerce-shipping-fields__field-wrapper > #shipping_country_field { order: 9; }
@media (max-width: 549px) { .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; } .woocommerce-shipping-fields__field-wrapper > .form-row { grid-column: 1 / -1 !important; } }

/* ---------- Giỏ hàng: hàng nút + nút tiến hành đặt hàng ---------- */
/* td.actions phải giữ display: table-cell (colspan) – căn nút bằng inline-flex, không flex cho td */
.woocommerce-cart-form td.actions { display: table-cell !important; text-align: left !important; }
.woocommerce-cart-form td.actions .continue-shopping { display: inline-block; float: none !important; margin: 0 10px 10px 0 !important; vertical-align: middle; }
.woocommerce-cart-form td.actions button[name="update_cart"] { vertical-align: middle; margin-bottom: 10px !important; }
.woocommerce-cart-form .button-continue-shopping, .woocommerce-cart-form button[name="update_cart"] { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; height: 44px; min-height: 44px; margin: 0 !important; padding: 0 20px !important; float: none !important; border-radius: 10px !important; font-size: 15px; font-weight: 700; line-height: 1 !important; text-transform: none; letter-spacing: 0; }
.woocommerce-cart-form .button-continue-shopping { border: 1.5px solid var(--tad-navy) !important; background: #fff !important; color: var(--tad-navy) !important; }
.woocommerce-cart-form .button-continue-shopping:hover { background: var(--tad-navy) !important; color: #fff !important; }
.woocommerce-cart-form .button-continue-shopping span { display: inline-flex; transition: transform .15s; }
.woocommerce-cart-form .button-continue-shopping:hover span { transform: translateX(-3px); }
.wc-proceed-to-checkout { margin: 0; padding: 8px 0 0 !important; }
.wc-proceed-to-checkout .checkout-button, #place_order { display: flex !important; align-items: center; justify-content: center; gap: 10px; line-height: 1.2 !important; padding: 0 20px !important; }
.wc-proceed-to-checkout .checkout-button::after { content: ""; width: 18px; height: 18px; flex-shrink: 0; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .15s; }
.wc-proceed-to-checkout .checkout-button:hover::after { transform: translateX(3px); }
.tad-proceed-note { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 10px 0 0; color: var(--tad-muted); font-size: 13px; text-align: center; }
.tad-proceed-note svg { color: var(--tad-green); }
@media (max-width: 549px) {
	.woocommerce-cart-form td.actions .continue-shopping { display: block; margin: 0 0 10px !important; }
	.woocommerce-cart-form .button-continue-shopping, .woocommerce-cart-form td.actions button[name="update_cart"] { width: 100%; }
	.tad-proceed-note { align-items: flex-start; text-align: left; }
}
