/* TT Code Manager Turbo CSS - generated at 2026-06-10 14:03:04 */
/* Chỉ biên dịch CSS frontend toàn site. Snippet theo trang/hook nội dung vẫn chạy dynamic để tránh sai phạm vi SEO. */

/* Snippet #24 - Đồng bộ Add cart */
/*
Theme/Plugin: Flatsome + WooCommerce
Mục tiêu: Làm gọn khu vực giá, mô tả ngắn, biến thể, thông tin bổ sung và nút mua trên trang chi tiết sản phẩm.
Phạm vi áp dụng: Chỉ trang chi tiết sản phẩm WooCommerce (.single-product .product-info).

Ghi chú chỉnh sửa nhanh:
- Màu giá: đổi --tt-price
- Màu biến thể đang chọn / viền focus email: đổi --tt-primary
- Chiều cao nút mua: đổi --tt-btn-height
- Chiều cao ô email: đổi --tt-input-height
*/

/* =====================================================
   0. BIẾN DÙNG CHUNG
   Đặt biến trong .product-info để không ảnh hưởng toàn website.
===================================================== */
.single-product .product-info {
    --tt-price: #ef4444;
    --tt-primary: #1e96f2;
    --tt-text: #111827;
    --tt-muted: #8a8a8a;
    --tt-border: #d9dde3;
    --tt-swatch-border: #d6dbe1;
    --tt-btn-height: 45px;
    --tt-input-height: 41px;
}

/* =====================================================
   1. GIÁ SẢN PHẨM
   Canh lại cỡ chữ, màu giá mới và giá cũ.
===================================================== */
.single-product .product-info .price {
    margin: 8px 0 12px !important;
    line-height: 1.25 !important;
    color: var(--tt-price) !important;
}

.single-product .product-info .price,
.single-product .product-info .price .woocommerce-Price-amount,
.single-product .product-info .price ins .woocommerce-Price-amount {
    font-size: 25px !important;
    font-weight: 800 !important;
}

.single-product .product-info .price ins {
    text-decoration: none !important;
}

.single-product .product-info .price del,
.single-product .product-info .price del .woocommerce-Price-amount {
    font-size: 21px !important;
    font-weight: 500 !important;
    color: var(--tt-muted) !important;
    opacity: 1 !important;
}

/* =====================================================
   2. MÔ TẢ NGẮN SẢN PHẨM
   Làm gọn khoảng cách giữa mô tả, danh sách bullet và khu vực biến thể.
===================================================== */
.single-product .product-info .product-short-description {
    margin-bottom: 16px !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.single-product .product-info .product-short-description p {
    margin-bottom: 12px !important;
}

.single-product .product-info .product-short-description ul {
    margin: 0 0 0 18px !important;
    padding: 0 !important;
}

.single-product .product-info .product-short-description li {
    margin-bottom: 7px !important;
    line-height: 1.5 !important;
}

/* =====================================================
   3. FORM GIỎ HÀNG VÀ NÚT MUA
   - Không biến toàn bộ form biến thể thành flex.
   - Chỉ hàng chứa nút mua mới dùng flex.
   - Ẩn ô số lượng để 2 nút xanh chia đều.
===================================================== */
.single-product .product-info form.cart,
.single-product .product-info form.variations_form {
    margin: 14px 0 0 !important;
    padding: 0 !important;
}

.single-product .product-info form.variations_form {
    display: block !important;
}

.single-product .product-info form.cart:not(.variations_form),
.single-product .product-info form.variations_form .woocommerce-variation-add-to-cart {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 0 10px !important;
    padding: 0 !important;
}

/* Ẩn số lượng mặc định của WooCommerce/Flatsome */
.single-product .product-info form.cart .quantity,
.single-product .product-info form.cart .ux-quantity {
    display: none !important;
}

/* Chuẩn hóa nút Thêm vào giỏ hàng và Mua ngay */
.single-product .product-info form.cart .single_add_to_cart_button,
.single-product .product-info form.cart .ux-buy-now-button,
.single-product .product-info form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button,
.single-product .product-info form.variations_form .woocommerce-variation-add-to-cart .ux-buy-now-button {
    flex: 1 1 calc(50% - 5px) !important;
    width: auto !important;
    max-width: none !important;
    height: var(--tt-btn-height) !important;
    min-height: var(--tt-btn-height) !important;
    line-height: var(--tt-btn-height) !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 5px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-align: center !important;
}

/* Nút/liên kết tư vấn màu cam nếu website đang dùng class .lienhetuvan */
.single-product .product-info .lienhetuvan {
    margin-top: 12px !important;
    margin-bottom: 10px !important;
}

/* =====================================================
   4. BIẾN THỂ SẢN PHẨM
   Áp dụng cho cụm chọn "Loại tài khoản", "Thời hạn"...
===================================================== */
.single-product .product-info form.variations_form table.variations {
    margin-top: 14px !important;
    margin-bottom: 14px !important;
    border: 0 !important;
}

.single-product .product-info form.variations_form table.variations,
.single-product .product-info form.variations_form table.variations tbody,
.single-product .product-info form.variations_form table.variations tr,
.single-product .product-info form.variations_form table.variations td,
.single-product .product-info form.variations_form table.variations th {
    padding: 0 !important;
    border: 0 !important;
}

.single-product .product-info form.variations_form table.variations td.label {
    display: block !important;
    width: 100% !important;
    margin-bottom: 8px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: var(--tt-text) !important;
}

.single-product .product-info form.variations_form table.variations td.label label {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--tt-text) !important;
}

.single-product .product-info form.variations_form table.variations td.value {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
}

/* Cụm nút chọn biến thể của Flatsome */
.single-product .product-info .ux-swatches {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
}

/* Nút biến thể bình thường */
.single-product .product-info .ux-swatch {
    height: 33px !important;
    min-height: 33px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid var(--tt-swatch-border) !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #374151 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 33px !important;
}

/* Nút biến thể đang được chọn */
.single-product .product-info .ux-swatch.selected {
    border-color: var(--tt-primary) !important;
    background: var(--tt-primary) !important;
    color: #fff !important;
    font-weight: 700 !important;
}

/* Ẩn chữ "Xóa" biến thể nếu làm bố cục bị rối */
.single-product .product-info .reset_variations {
    display: none !important;
}

/* Khoảng cách từ cụm thông tin/biến thể xuống nút mua */
.single-product .product-info form.variations_form .woocommerce-variation-add-to-cart {
    margin-top: 14px !important;
}

/* =====================================================
   5. THÔNG TIN BỔ SUNG / EMAIL
   Tối ưu bảng thwepo-extra-options và xóa đường viền/nét đứt thừa.
===================================================== */
.single-product .product-info table.thwepo-extra-options {
    width: 100% !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.single-product .product-info table.thwepo-extra-options,
.single-product .product-info table.thwepo-extra-options tbody,
.single-product .product-info table.thwepo-extra-options tr,
.single-product .product-info table.thwepo-extra-options th,
.single-product .product-info table.thwepo-extra-options td {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

.single-product .product-info table.thwepo-extra-options tr {
    margin: 0 !important;
    padding: 0 !important;
}

/* Tiêu đề "Nhập thông tin bổ sung" */
.single-product .product-info table.thwepo-extra-options h3 {
    margin: 0 0 12px !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: var(--tt-text) !important;
}

/* Cột nhãn Email */
.single-product .product-info table.thwepo-extra-options td.label,
.single-product .product-info table.thwepo-extra-options td.label.leftside {
    width: 72px !important;
    min-width: 72px !important;
    padding: 0 10px 0 0 !important;
    vertical-align: middle !important;
}

.single-product .product-info table.thwepo-extra-options .label-tag {
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: var(--tt-input-height) !important;
    color: var(--tt-text) !important;
}

/* Cột chứa input */
.single-product .product-info table.thwepo-extra-options td.value,
.single-product .product-info table.thwepo-extra-options td.value.leftside {
    padding: 0 !important;
    vertical-align: middle !important;
}

/* Ô nhập Email */
.single-product .product-info table.thwepo-extra-options input.thwepof-input-field {
    width: 100% !important;
    height: var(--tt-input-height) !important;
    min-height: var(--tt-input-height) !important;
    margin: 0 !important;
    padding: 0 14px !important;
    border: 1px solid var(--tt-border) !important;
    border-radius: 7px !important;
    outline: none !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--tt-text) !important;
    font-size: 14px !important;
}

.single-product .product-info table.thwepo-extra-options input.thwepof-input-field:focus {
    border-color: var(--tt-primary) !important;
    box-shadow: 0 0 0 3px rgba(30, 150, 242, 0.12) !important;
}

.single-product .product-info table.thwepo-extra-options input.thwepof-input-field::placeholder {
    color: #8a94a3 !important;
    font-size: 13.5px !important;
}

/* =====================================================
   6. RESPONSIVE
   Tối ưu lại cỡ chữ/khoảng cách trên tablet và mobile.
===================================================== */
@media (max-width: 849px) {
    .single-product .product-info {
        --tt-btn-height: 44px;
    }

    .single-product .product-info form.cart,
    .single-product .product-info form.variations_form {
        margin-top: 12px !important;
    }

    .single-product .product-info form.cart .single_add_to_cart_button,
    .single-product .product-info form.cart .ux-buy-now-button,
    .single-product .product-info form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button,
    .single-product .product-info form.variations_form .woocommerce-variation-add-to-cart .ux-buy-now-button {
        font-size: 14px !important;
    }

    .single-product .product-info .lienhetuvan {
        margin-top: 10px !important;
    }
}

@media (max-width: 549px) {
    .single-product .product-info .price,
    .single-product .product-info .price .woocommerce-Price-amount,
    .single-product .product-info .price ins .woocommerce-Price-amount {
        font-size: 23px !important;
    }

    .single-product .product-info .price del,
    .single-product .product-info .price del .woocommerce-Price-amount {
        font-size: 19px !important;
    }

    .single-product .product-info .product-short-description {
        margin-bottom: 12px !important;
    }

    .single-product .product-info form.variations_form table.variations {
        margin-top: 14px !important;
    }

    .single-product .product-info .ux-swatch {
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 10px !important;
        font-size: 13.5px !important;
        line-height: 32px !important;
    }

    /* Mobile: đưa nhãn Email lên trên input để dễ đọc */
    .single-product .product-info table.thwepo-extra-options,
    .single-product .product-info table.thwepo-extra-options tbody,
    .single-product .product-info table.thwepo-extra-options tr,
    .single-product .product-info table.thwepo-extra-options td {
        display: block !important;
        width: 100% !important;
    }

    .single-product .product-info table.thwepo-extra-options td.label,
    .single-product .product-info table.thwepo-extra-options td.label.leftside {
        width: 100% !important;
        min-width: 100% !important;
        padding: 0 0 6px !important;
    }

    .single-product .product-info table.thwepo-extra-options .label-tag {
        line-height: 1.3 !important;
    }

    .single-product .product-info table.thwepo-extra-options input.thwepof-input-field {
        height: 42px !important;
        min-height: 42px !important;
    }
}
/* Khoảng cách phần mô tả dài sản phẩm */
.single-product div#tab-description,
.single-product .woocommerce-Tabs-panel--description,
.single-product .product-page-accordian,
.single-product .entry-content {
    padding-top: 18px !important;
}

/* Nếu có đường kẻ ngang nằm ngay trên nội dung mô tả */
.single-product .woocommerce-tabs,
.single-product .product-tabs,
.single-product .woocommerce-Tabs {
    margin-top: 18px !important;
    padding-top: 16px !important;
    border-top: 1px solid #e5e7eb !important;
}

/* Snippet #23 - Trang bảo trì */
@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800;900&display=swap');

body:has(.ttsx-maint-v2) .header-wrapper,
body:has(.ttsx-maint-v2) #masthead,
body:has(.ttsx-maint-v2) .footer-wrapper,
body:has(.ttsx-maint-v2) .absolute-footer,
body:has(.ttsx-maint-v2) .page-title,
body:has(.ttsx-maint-v2) .breadcrumbs,
body:has(.ttsx-maint-v2) #button-contact-vr,
body:has(.ttsx-maint-v2) .button-contact,
body:has(.ttsx-maint-v2) .devvn_float_contact,
body:has(.ttsx-maint-v2) .devvn_float_left_right_ads,
body:has(.ttsx-maint-v2) .hotline-phone-ring-wrap,
body:has(.ttsx-maint-v2) .zalo-container,
body:has(.ttsx-maint-v2) .quick-alo-phone,
body:has(.ttsx-maint-v2) .floating-buttons,
body:has(.ttsx-maint-v2) .float-contact,
body:has(.ttsx-maint-v2) .widget-btn-list {
  display: none !important;
}

body:has(.ttsx-maint-v2) #main,
body:has(.ttsx-maint-v2) .page-wrapper,
body:has(.ttsx-maint-v2) .content-area,
body:has(.ttsx-maint-v2) .entry-content,
body:has(.ttsx-maint-v2) .section,
body:has(.ttsx-maint-v2) .section-content,
body:has(.ttsx-maint-v2) .row,
body:has(.ttsx-maint-v2) .col {
  padding: 0 !important;
  margin: 0 !important;
  max-width: none !important;
}

.ttsx-maint-v2 {
  --tts-red: #d70018;
  --tts-red-2: #ff3b4d;
  --tts-yellow: #ffb000;
  --tts-zalo: #0068ff;
  --tts-telegram: #229ed9;
  --tts-phone: #22c55e;
  --tts-border: rgba(255,255,255,.15);

  width: 100vw !important;
  min-height: 100svh !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 18px !important;
  color: #fff !important;
  font-family: 'Be Vietnam Pro', 'Roboto', 'Segoe UI', Arial, sans-serif !important;
  background:
    radial-gradient(circle at 12% 14%, rgba(255,176,0,.13), transparent 27%),
    radial-gradient(circle at 88% 10%, rgba(255,59,77,.24), transparent 32%),
    linear-gradient(135deg, #190207 0%, #790010 48%, #150207 100%) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow-x: hidden !important;
}

.ttsx-maint-v2,
.ttsx-maint-v2 * {
  box-sizing: border-box !important;
}

.ttsx-maint-v2 br {
  display: none !important;
}

.ttsx-maint-v2 p {
  margin: 0 !important;
  padding: 0 !important;
}

.ttsx-shell {
  width: min(1080px, 100%) !important;
  margin: 0 auto !important;
}

.ttsx-top {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}

.ttsx-brand,
.ttsx-top-link {
  height: 58px !important;
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 0 16px !important;
  border-radius: 20px !important;
  border: 1px solid var(--tts-border) !important;
  background: rgba(255,255,255,.10) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(14px) !important;
}

.ttsx-brand {
  flex: 0 1 auto !important;
}

.ttsx-top-link {
  flex: 0 0 auto !important;
  justify-content: center !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.ttsx-top-link:hover {
  color: #fff !important;
  text-decoration: none !important;
  filter: brightness(1.04) !important;
}

.ttsx-top-link img {
  width: 20px !important;
  height: 20px !important;
  object-fit: contain !important;
  display: block !important;
  flex: 0 0 20px !important;
}

.ttsx-logo {
  position: relative !important;
  width: 43px !important;
  height: 43px !important;
  flex: 0 0 43px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, var(--tts-red-2), var(--tts-red)) !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

.ttsx-logo::after {
  content: "" !important;
  position: absolute !important;
  right: -2px !important;
  bottom: -2px !important;
  width: 13px !important;
  height: 13px !important;
  border-radius: 50% !important;
  background: #22c55e !important;
  border: 3px solid #5d0712 !important;
}

.ttsx-brand-title {
  color: #fff !important;
  font-size: 17px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  margin: 0 !important;
}

.ttsx-brand-sub {
  color: rgba(255,255,255,.76) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  margin-top: 4px !important;
}

.ttsx-card {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 370px !important;
  gap: 28px !important;
  align-items: center !important;
  padding: 34px !important;
  border-radius: 30px !important;
  border: 1px solid var(--tts-border) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.06)),
    rgba(43,4,11,.58) !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.32) !important;
  backdrop-filter: blur(18px) !important;
}

.ttsx-left {
  min-width: 0 !important;
}

.ttsx-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 14px !important;
  margin-bottom: 16px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

.ttsx-badge::before {
  content: "" !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: #fff !important;
  box-shadow: 0 0 0 6px rgba(255,255,255,.12) !important;
}

.ttsx-title {
  color: #fff !important;
  font-size: clamp(36px, 4.1vw, 54px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: -1.3px !important;
  margin: 0 0 16px !important;
}

.ttsx-title span {
  color: var(--tts-yellow) !important;
}

.ttsx-desc {
  color: rgba(255,255,255,.84) !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  font-weight: 500 !important;
  margin: 0 !important;
  max-width: 600px !important;
}

.ttsx-progress {
  max-width: 600px !important;
  margin-top: 22px !important;
  padding: 13px !important;
  border-radius: 18px !important;
  background: rgba(0,0,0,.22) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

.ttsx-progress-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  margin-bottom: 9px !important;
}

.ttsx-progress-bar {
  height: 10px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: rgba(255,255,255,.16) !important;
}

.ttsx-progress-bar span {
  display: block !important;
  height: 100% !important;
  width: 72% !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, #fff, var(--tts-yellow), var(--tts-red-2)) !important;
  animation: ttsxProgress 2.7s ease-in-out infinite alternate !important;
}

.ttsx-actions {
  width: 100% !important;
  max-width: 600px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 22px !important;
}

.ttsx-btn {
  width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 12px !important;
  border-radius: 16px !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  transition: .18s ease !important;
}

.ttsx-btn:hover {
  transform: translateY(-2px) !important;
  color: #fff !important;
  text-decoration: none !important;
  filter: brightness(1.04) !important;
}

.ttsx-btn img {
  width: 19px !important;
  height: 19px !important;
  flex: 0 0 19px !important;
  object-fit: contain !important;
  display: block !important;
}

.ttsx-btn-zalo {
  background: var(--tts-zalo) !important;
  box-shadow: 0 14px 28px rgba(0,104,255,.26) !important;
}

.ttsx-btn-telegram {
  background: var(--tts-telegram) !important;
  box-shadow: 0 14px 28px rgba(34,158,217,.26) !important;
}

.ttsx-btn-phone {
  background: var(--tts-phone) !important;
  box-shadow: 0 14px 28px rgba(34,197,94,.26) !important;
}

.ttsx-services {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin-top: 22px !important;
}

.ttsx-service {
  min-height: 94px !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

.ttsx-service-title {
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 900 !important;
  margin: 0 0 6px !important;
}

.ttsx-service-text {
  color: rgba(255,255,255,.72) !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

.ttsx-right {
  display: grid !important;
  gap: 16px !important;
  justify-items: stretch !important;
}

.ttsx-visual {
  width: 100% !important;
  min-height: 230px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 26px !important;
  border: 1px solid var(--tts-border) !important;
  background:
    radial-gradient(circle at 50% 15%, rgba(255,255,255,.16), transparent 42%),
    rgba(255,255,255,.075) !important;
  position: relative !important;
  overflow: hidden !important;
}

.ttsx-visual::before {
  content: "" !important;
  position: absolute !important;
  width: 190px !important;
  height: 190px !important;
  border-radius: 50% !important;
  border: 2px dashed rgba(255,255,255,.15) !important;
  animation: ttsxSpin 24s linear infinite !important;
}

.ttsx-server {
  position: relative !important;
  z-index: 2 !important;
  width: 185px !important;
  height: 132px !important;
  border-radius: 24px !important;
  background: linear-gradient(135deg, #ff5a64, #8f101e 58%, #3b050b) !important;
  box-shadow: 0 26px 35px rgba(0,0,0,.32) !important;
  display: grid !important;
  gap: 10px !important;
  padding: 23px !important;
  animation: ttsxFloat 4.5s ease-in-out infinite !important;
}

.ttsx-server-row {
  height: 21px !important;
  border-radius: 8px !important;
  background: rgba(55,0,8,.55) !important;
  position: relative !important;
}

.ttsx-server-row::before {
  content: "" !important;
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  width: 9px !important;
  height: 9px !important;
  transform: translateY(-50%) !important;
  border-radius: 50% !important;
  background: #22c55e !important;
}

.ttsx-server-row:nth-child(2)::before {
  background: var(--tts-yellow) !important;
}

.ttsx-server-row:nth-child(3)::before {
  background: var(--tts-red-2) !important;
}

.ttsx-server-row::after {
  content: "" !important;
  position: absolute !important;
  left: 34px !important;
  top: 50% !important;
  width: 70px !important;
  height: 5px !important;
  transform: translateY(-50%) !important;
  border-radius: 99px !important;
  background: rgba(255,255,255,.65) !important;
}

.ttsx-flash {
  position: absolute !important;
  right: -17px !important;
  bottom: 22px !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: var(--tts-red-2) !important;
  display: grid !important;
  place-items: center !important;
  box-shadow: 0 12px 28px rgba(255,59,77,.38) !important;
}

.ttsx-flash::before {
  content: "⚡" !important;
  color: #fff !important;
  font-size: 27px !important;
  font-weight: 900 !important;
}

.ttsx-contact {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 104px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 14px !important;
  border-radius: 24px !important;
  background: rgba(0,0,0,.25) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}

.ttsx-qr {
  width: 104px !important;
  height: 104px !important;
  padding: 8px !important;
  border-radius: 18px !important;
  background: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.22) !important;
}

.ttsx-qr img {
  width: 88px !important;
  height: 88px !important;
  max-width: 88px !important;
  max-height: 88px !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 8px !important;
}

.ttsx-contact-info {
  min-width: 0 !important;
}

.ttsx-contact-title {
  text-align: left !important;
  color: #fff !important;
  font-size: 15px !important;
  line-height: 1.3 !important;
  font-weight: 900 !important;
  margin: 0 0 10px !important;
}

.ttsx-contact-row {
  display: grid !important;
  grid-template-columns: 18px 66px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px !important;
  color: rgba(255,255,255,.78) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  margin: 6px 0 !important;
  font-weight: 600 !important;
  text-align: left !important;
}

.ttsx-contact-row img {
  width: 16px !important;
  height: 16px !important;
  object-fit: contain !important;
  display: block !important;
}

.ttsx-contact-row span {
  color: rgba(255,255,255,.72) !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

.ttsx-contact-row a {
  color: #fff !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.ttsx-footer {
  text-align: center !important;
  color: rgba(255,255,255,.58) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  margin-top: 14px !important;
  font-weight: 500 !important;
}

@keyframes ttsxProgress {
  from { width: 50%; }
  to { width: 86%; }
}

@keyframes ttsxFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes ttsxSpin {
  to { transform: rotate(360deg); }
}

@media (max-width: 1100px) {
  .ttsx-card {
    grid-template-columns: 1fr !important;
  }

  .ttsx-left {
    text-align: center !important;
  }

  .ttsx-desc,
  .ttsx-progress,
  .ttsx-actions {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .ttsx-right {
    max-width: 430px !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 768px) {
  .ttsx-maint-v2 {
    align-items: flex-start !important;
    padding: 10px !important;
  }

  .ttsx-top {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .ttsx-brand,
  .ttsx-top-link {
    width: 100% !important;
    justify-content: center !important;
  }

  .ttsx-card {
    padding: 18px !important;
    border-radius: 24px !important;
    gap: 22px !important;
  }

  .ttsx-title {
    font-size: 31px !important;
    line-height: 1.14 !important;
    letter-spacing: -.7px !important;
  }

  .ttsx-desc {
    font-size: 14.5px !important;
    line-height: 1.68 !important;
  }

  .ttsx-progress-head {
    font-size: 12px !important;
  }

  .ttsx-actions {
    grid-template-columns: 1fr !important;
    max-width: 100% !important;
  }

  .ttsx-btn {
    height: 54px !important;
    font-size: 15px !important;
  }

  .ttsx-services {
    grid-template-columns: 1fr !important;
  }

  .ttsx-service {
    min-height: auto !important;
  }

  .ttsx-visual {
    min-height: 205px !important;
  }

  .ttsx-server {
    animation: none !important;
  }

  .ttsx-contact {
    grid-template-columns: 1fr !important;
    text-align: center !important;
    justify-items: center !important;
  }

  .ttsx-contact-title {
    text-align: center !important;
  }

  .ttsx-contact-row {
    grid-template-columns: 18px 64px auto !important;
    justify-content: center !important;
    text-align: left !important;
  }
}

@media (max-width: 390px) {
  .ttsx-card {
    padding: 15px !important;
  }

  .ttsx-title {
    font-size: 27px !important;
  }

  .ttsx-brand-title {
    font-size: 15px !important;
  }

  .ttsx-brand-sub {
    font-size: 11px !important;
  }

  .ttsx-btn {
    font-size: 14px !important;
  }
}

/* Snippet #21 - CSS bổ sung 03-2025 */
/* Thay đổi Text ở menu bổ sung  */
.text.css-menu-giua > p > a:hover {
    text-decoration: underline;
}
.text.css-menu-giua > p > a {
    color: white;
    text-decoration: none;
    transition: filter 0.3s ease;
}
/* Ẩn absolute footer */
.absolute-footer{display:none!important}

/* Snippet #20 - Hiệu ứng chữ HTML ở Topbar */
.slides a {
        color: white !important;
    }

    .slides a:hover {
        text-decoration: underline; /* Hiệu ứng khi hover */
    }

/* Snippet #19 - fix lỗi mua ngay xuống dòng - padding ttbs */
.woocommerce-variation-add-to-cart, form.cart {
    display: block !important;
}
/* padding của thông tin bổ sung */
table.thwepo-extra-options.thwepo_variable {
    padding-bottom: 10px;
}
/* Font chữ Thời hạn */
th.label {
    font-size: 16px;
}

/* Snippet #18 - Chỉnh sửa product-page(cần xóa khi đổi productpage) */
.product-main {
    padding: 0px 0 !important;
}
.product-info.summary.entry-summary.col.col-fit.product-summary.text-left.form-flat {
    padding-bottom: 0px !important;
}

/* Snippet #17 - CSS- NEW */
/* Liên hệ tư vấn */
#lien-he-tu-van {
    display: inline-block;
    overflow: hidden;
    clear: both;
    padding: 7px 0;
    border-radius: 4px;
    font-size: 18px;
    line-height: normal;
    color: #fff !important;
    text-align: center;
    background-color: #fb6e2e;
    margin: 0 0 10px 0;
    text-decoration: none;
    border-bottom: 0 !important;
    max-width: 100%;
    width: 100%;
}

.lien-he-zalo {
    text-align: center;
}

/* Liên hệ tư vấn - ở dưới nút mua hàng */



/* Kích thước tìm kiếm */
.search-form {
    border-width: 2px;
}

.icon-search {
    color: red;
}

#woocommerce-product-search-field-0 {
    border-radius: 5px;
    background: transparent;
    border: 1.5px solid rgb(221, 221, 227);
    font-size: initial;
}
}

/* Bg-tìm kiếm mobile */
#woocommerce-product-search-field-1 {
    background-color: #fff;
    max-width: 360px;
}

/* Chỉnh sửa thanh tìm kiếm */



/* Css - Nút Mua Ngay */
button.button.buy_now_button {
    overflow: hidden;
    margin-bottom: 13px;
    border-radius: 4px;
    height: 35px;
    border: unset;
    font-size: 14px;
    min-width: 120px;
}

button.single_add_to_cart_button.button.alt {
    overflow: hidden;
    margin-bottom: 13px;
    border-radius: 4px;
    height: 40px;
    border: unset;
    font-size: 14px;
    min-width: 120px;
    margin-right: 5px;
}

.cart {
    margin: 0px;
}

/* span.amount {
    color: black;
} */

/* .form-flat button,
.form-flat input {
    border-radius: 10px;
} */

button.button.buy_now_button {
    overflow: hidden;
    margin-bottom: 13px;
    border-radius: 4px;
    height: 40px;
    border: unset;
    font-size: 14px;
    margin-right: 5px;
}

/* -------------------------------- */

/* number-bannner */
/* .thangtin-number {
    height: 85px;
}

.thangtin-banner {
    max-height: 600px;
} */

/* ---------------------------------- */


/* Xóa row các ngân hàng */
div.vietqr-row {
    display: none;
}

/* ---------------------------- */

/* mục lục full width */
#ez-toc-container {
    width: 100%;
}

/* ------------------------- */

/* Màu thuộc tính sản phẩm */
.ux-swatch.selected {
    box-shadow: none !important;
    background-color: #0078D4;
    color: #fff;
    border: 1px solid #0078D4;
    border-radius: 5px;
}

.ux-swatch--label {
    border-radius: 5px;
}

/* Chữ trắng Zalo */
a.button.plain.is-bevel.box-shadow-1.box-shadow-2-hover {
    color: white;
}
/* ----------------------- */
/* Sticky-Contact*/
.widget-btn-list {
position: fixed;
right: 40px;
bottom: 135px;
width: 45px;
z-index: 99999;}
.widget-btn-list.left{
right: auto; 
left: 15px; 
bottom: 60px;}
.widget-btn-list a {
width: 60px;height: 60px;line-height: 50px;
display: inline-block!important;
border: none!important;
font-size: 18px!important;
color: #fff!important;
text-align: center!important;
position: relative;
border-radius: 50%!important;
cursor: pointer!important;
background-size: auto;background-repeat: no-repeat;
background-position: center;}
.widget-btn-list .call {background-image: url(https://thangtinstore.com/wp-content/uploads/2023/01/phone.svg)!important;background-color: #f7a400!important;margin-bottom: 7px;}
.widget-btn-list .messenger {background-image: url(https://thangtinstore.com/wp-content/uploads/2023/04/lien-he-fb.svg)!important;background-color: #0384fd!important;}
.widget-btn-list .telegram {background-image:url(https://thangtinstore.com/wp-content/uploads/2023/01/telegram.svg)!important;background-color: #29b6f6!important;margin-bottom: 7px;}
.widget-btn-list .zalo {background-image: url(https://thangtinstore.com/wp-content/uploads/2023/01/zalo.svg)!important;background-color: #0068ff!important;margin-bottom: 7px;}
@media (max-width: 549px){
.widget-btn-list {
    right: 30px!important;
    bottom: 135px!important;
    width: 45px!important;
}
}
@media (max-width: 549px){
.widget-btn-list a {
    width: 55px!important;
    height: 55px!important;
}
}

/* Snippet #16 - Chỉnh Margin Li */
li {
    margin-left: 1.3em;
}

/* Snippet #15 - css-reviewdev */
/* Giảm chiều cao */
span.devvn_scala_rating{
	height: 5px !important;
}
/* Đổi màu */
span.devvn_perc_rating{
	background-color:#fe8c23 !important;
}
/* Thay đổi kích thước chữ đánh giá */
span.devvn_num_reviews{
	min-width: 128px !important;
}
em.woocommerce-review__verified{
	line-height:0.9 !important;
}
/* Xóa chữ đánh giá trung bình */
body .style-v2 .star-average .woocommerce-product-rating strong{
	display: none !important;
}
/* Chỉnh kích thước số lượng sao trung bình */
.woocommerce div.product .style-v2 .woocommerce-product-rating span.star_average{
    font-size: 36px;
    font-weight: 700;
    line-height: 50px;
    color: #0e252c;
}
/* Chỉnh màu sao */
.woocommerce div.product .style-v2 .woocommerce-product-rating span.star_average i.devvn-star{
	font-size: 32px;
    color: #fe8c23;
}
/* Đổi chữ sao */
span.devvn_stars_value i:before{
	content:"sao" !important;
}
span.devvn_stars_value{
	color:#03a0e2;
}
/* Màu phần đánh giá */
body.woocommerce #reviews #comments ol.commentlist li .comment-text{
	background-color: #f5f5f7;
    padding: 5px 15px;
    border-radius: 12px;
    position: relative;
}
/* Đổi font */
.devvn-style2 .devvn_review_mid p, .devvn-style2 .devvn_review_top strong{
    font-size: 16px !important;
	
}
body .devvn_review_mid .star-rating, body .devvn_review_mid .devvn_star_rating{
	font-size:16px !important;
	display: block !important;
    margin: 5px 0;
}
body.woocommerce #reviews .star-rating {
    color: #fe8c23;
}
strong.woocommerce-review__author{
	margin-right:0px !important;
}
.devvn-style2 .devvn_review_top em{
	font-size:15px !important;
	font-style: normal !important;
}
.woocommerce div.product .style-v2 .woocommerce-product-rating span.star_average i.devvn-star{
	top:0;
}
/* Bỏ viền và thay nền */
.star_box{
border: 0px !important;
background:#f5f5f7 !important;
}
/* Thay màu nút đánh giá ngay */
#comments a.btn-reviews-now{
	background-color: #0078d4 !important;
	border-radius: 5px !important;

}
#comments a.btn-reviews-now:hover{
	background-color: #0060aa !important;
}

/* Snippet #14 - Chỉnh kích thước logo ngân hàng MB */
.payment_method_casso-payos>label>img{
width:70px !important;
}

/* Snippet #13 - Bỏ div dưới header bottom */
.header-block.block-html-after-header.z-1 {
    display: none;
}

/* Snippet #12 - WPC Linked Variation for WooCommerce */
.wpclv-term.wpclv-term-button.hint--top.active {
    color: #fff;
    background: #0078D4 !important;
    transition: transform .3s,border .3s,background .3s,box-shadow .3s,opacity .3s,color .3s;
    border: 2px solid #0078D4;
}
.wpclv-attributes .wpclv-terms .wpclv-term{
    border-radius: 5px;
    margin-bottom: 3px;
    font-size: 15px;
    font-weight: 550;
	height: 34px !important;
}
.wpclv-attributes .wpclv-terms .wpclv-term span, .wpclv-attributes .wpclv-terms .wpclv-term a{
	background-color:transparent !important;
	height:25px !important;
	line-height: 25px !important;
	padding: 0 5px !important;
}
.wpclv-attributes .wpclv-terms .wpclv-term.active, .wpclv-attributes .wpclv-terms .wpclv-term:hover{
	border:2px solid #0078D4 !important;
}
.wpclv-attributes .wpclv-attribute-label{
	 margin-bottom: 0px;
    font-size: 15px;
    font-weight: 700;
}
.wpclv-attributes .wpclv-attribute{
	margin-bottom: 0px !important;
}

/* Snippet #11 - Chỉnh sửa lightbox Zalo */
div#zalo-qr{
	max-width: none !important;
	padding: 0px !important;
	background-color: rgba(0,0,0,0);
	box-shadow: none !important;
}

/* Snippet #8 - css.nhapthongtinbosung */
/* nhapthongtinbosung*/
h3[name="thongtinbosung"]{
font-size: 14px;
font-weight: 700;
color: #3d3d3d;
}
table.thwepo-extra-options td {
border: none;
padding:0px;
}
table.thwepo-extra-options input{
	font-size:13px;
}

/* Snippet #7 - css.lienhetuvan */
.lienhetuvan{
		display: inline-block;
    overflow: hidden;
    clear: both;
    padding: 7px 0;
    border-radius: 4px;
    font-size: 18px;
    line-height: normal;
    color: #fff !important;
    text-align: center;
    background-color: #fb6e2e;
    margin: 0 0 10px 0;
    text-decoration: none;
    border-bottom: 0 !important;
    width: 100%;
}
.lienhetuvan>strong{
	text-transform:uppercase;
}

/* Snippet #3 - Chỉnh form sort-woo */
/* chỉnh form sort-woo */
.woocommerce-ordering>select{
border-radius:20px;
background-color:#fff;
}
.woocommerce-result-count{
visibility:hidden;
}
.category-page-row{
	padding-top:10px;
	border-top:1px dotted lightgray;
}

/* Snippet #2 - Màu giá sản phẩm(form tìm kiếm) */
/*Chỉnh màu giá sản phẩm*/
.suggestion-post-title{
    color: #1a1a1a;
}
.aa-dropdown-menu .aa-suggestion em {
    background: transparent;
}
.suggestion-post-price {
    font-size: 12px;
}
.suggestion-post-price > .amount,
.suggestion-post-price > ins .amount {
    color: red;
    text-decoration: none
}
.suggestion-post-price > ins{
    text-decoration: none
}
.suggestion-post-price del {
    font-size: 12px;
    color: grey
}
