.rts-section-gap-single-products {padding: 50px 0;}
.main-image img {border-radius: 12px;}
.product-images {text-align: center;}
.product-thumbnails {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 0;
    max-height: 880px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #888 #f1f1f1;
    padding: 10px;
}

.product-thumbnails::-webkit-scrollbar {
    width: 6px;
}

.product-thumbnails::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.product-thumbnails::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.product-thumbnails::-webkit-scrollbar-thumb:hover {
    background: #555;
}
.woocommerce img, .woocommerce-page img {width: 100%;}
.product-thumb {
    object-fit: cover;
    border: 1px solid #ddd;
    border-radius: 12px;
    cursor: pointer;
    transition: transform 0.2s, border-color 0.2s;
    background-color: #fff;
    padding: 10px;
    border: 1px solid #00000066;
    width: 100%;
}

  .product-thumb:hover,
  .product-thumb.active {
    border: 1px solid #ff9100;
  }

  .product-summary .product-title {
    font-size: 22px;
    color: var(--color-main);
    padding: 10px 0;
  }

  .product-price .woocommerce-Price-amount bdi {
    font-size: 26px;
    color: var(--color-main-red);
    font-weight: 700;
    padding: 10px 0;
    display:block;
  }

  .product-summary {
    padding: 0 10px 10px;
  }

  .product-cart {
    padding: 20px 0;
  }

  .product-cart form.cart {
    display: flex;
    margin: 0;
    align-items: center;
    justify-content: flex-start;
  }

  .woocommerce div.product form.cart {
    margin-bottom: 0;
  }

  .product-meta .short-description {
    padding: 10px;
    border: 1px dashed;
    border-radius: 6px;
    background: var(--color-white);
    height: 400px;
    overflow: auto;
  }
.product-summary-right{
    margin: 40px 0;
}
  .product-summary-content {
    background: var(--color-white);
    padding: 10px;
    border-radius: 8px;
    margin-bottom: 40px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  }

  .product-summary-right .rts-single-wized {
    padding: 30px;
    background: var(--color-white);
    border-radius: 8px;
    border: 1px solid #33333330;
  }

  .product-summary-right .rts-single-wized .recent-post-single .post-title .title {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 600;
    color: var(--color-main);
    line-height: 20px;
    margin-top: 5px;
    transition: 0.3s;
  }

  .rts-single-wized .wized-header .title {
    position: relative;
    margin-bottom: 20px;
    color: var(--color-main);
  }

  .rts-single-wized .wized-header .title::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 70px;
    height: 3px;
    background: var(--color-main);
  }

  .product-summary-right .rts-single-wized .recent-post-single .post-title .price {
    font-size: 16px;
    padding: 3px 0;
  }

  .product-summary-right .rts-single-wized .recent-post-single .thumbnail img {
    border-radius: 8px;
  }

  .product-summary-content i {
    padding: 10px 0;
  }

  .woocommerce div.product form.cart .single_add_to_cart_button {
    background: var(--color-main);
    font-weight: 500;
    padding: 12px;
  }

  .single-product-describe {
    background: #fff;
    border: 1px solid #dddddd;
    border-radius: 12px;
    padding: 30px;
  }
  .nav-tabs{
    padding-bottom: 20px;
  }

  .single-product-describe .nav {
    gap: 20px;
  }

  .single-product-describe .nav-item .nav-link {
    font-size: 18px;
    background: var(--color-main);
    padding: 15px 20px;
    border-radius: 30px;
    color: var(--color-white);
    font-weight: 500;
  }

  .tab-content img{
    max-width:768px;
    width: 100%;
    border-radius: 12px;
    display: block;
    margin: auto;
  }
  
/* ===== PRODUCT CARD ===== */
.wc-block-grid__product{
    background:#fff;
    border:1px solid #eee;
    border-radius:10px;
    padding:18px;
    text-align:center;
    transition:all .3s ease;
    height:100%;
}

/* Hover card */
.wc-block-grid__product:hover{
    transform:translateY(-6px);
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

/* ===== PRODUCT LINK ===== */
.wc-block-grid__product-link{
    text-decoration:none;
    display:block;
}

/* ===== PRODUCT IMAGE ===== */
.wc-block-grid__product-image{
    overflow:hidden;
    border-radius:8px;
}

.wc-block-grid__product-image img{
    width:100%;
    height:auto;
    border-radius:8px;
    transition:transform .35s ease;
}

/* Image zoom hover */
.wc-block-grid__product:hover 
.wc-block-grid__product-image img{
    transform:scale(1.05);
}

/* ===== PRODUCT TITLE ===== */
.wc-block-grid__product-title{
    font-size:18px;
    font-weight:600;
    margin-top:14px;
    margin-bottom:10px;
    color:#222;
    line-height:1.4;

    /* giới hạn 2 dòng */
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

/* ===== PRODUCT PRICE ===== */
.wc-block-grid__product-price{
    margin:10px 0;
}

.wc-block-grid__product-price 
.woocommerce-Price-amount{
    font-size:20px;
    font-weight:700;
    color:var(--color-main-red);
}

/* ===== ADD TO CART BUTTON ===== */
.wc-block-grid__product-add-to-cart{
    margin-top:12px;
}

.wc-block-grid__product-add-to-cart 
.wp-block-button__link{
    background:var(--color-main-red);
    color:#fff;
    padding:10px 18px;
    border-radius:6px;
    font-weight:600;
    display:inline-block;
    transition:all .3s ease;
}

/* Button hover */
.wc-block-grid__product-add-to-cart 
.wp-block-button__link:hover{
    background:#c62828;
    transform:translateY(-2px);
}

/* ===== GRID FIX ===== */
.wc-block-grid__products{
    display:grid;
    gap:20px;
}

@media (max-width:768px){

    .wc-block-grid__product{
        padding:14px;
    }

    .wc-block-grid__product-title{
        font-size:16px;
    }

    .wc-block-grid__product-price 
    .woocommerce-Price-amount{
        font-size:18px;
    }

}
  .tab-content .tab-pane p {
    margin: 0;
    padding: 5px 0;
    font-size: 18px;
  }

  .tab-content .tab-pane iframe {
    max-width: 680px;
    border-radius: 12px;
  }

  .tab-pane h2,
  .tab-pane h3,
  .tab-pane h4,
  .tab-pane h5,
  .tab-pane h6 {
    font-size: 24px;
    color: var(--color-main);
    padding: 5px 0;
    margin: 0;
    font-weight: 600;
  }
  
  .tab-pane h2{
        padding-left: 20px;
        border-left: 1rem solid #ff8e43;
        margin-bottom: 10px;
        margin-top: 10px;
        line-height: 30px;
  }

  .tab-pane h3 {
    font-size: 22px;
  }

  .tab-pane h4 {
    font-size: 20px;
  }

  .tab-pane h5 {
    font-size: 18px;
  }

  .tab-pane h6 {
    font-size: 16px;
  }

  #commentform #submit {
    border-radius: 30px !important;
    background: var(--color-main) !important;
    color: var(--color-white) !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    padding: 10px 20px !important;
  }

  #commentform #submit:hover {
    background: #000000 !important;
  }

  #commentform #comment {
    height: 100px !important;
  }

.tab-pane .table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tab-pane table {
    width: 100%;
    min-width: calc(720px;);
    border-collapse: collapse;
    background:#ffffff;
    color: #374151;
    font-size: 18px;
    line-height: 32px;
    table-layout: auto;
    margin: 0;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 0 rgba(16, 24, 40, 0.03);
}

.tab-pane table caption {
    caption-side: top;
    text-align: left;
    font-weight: 600;
    padding: 10px 12px;
    color: #111827;
    font-size: 15px;
}

.tab-pane table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #f7f9fc;
    color: #111827;
    padding: calc(12px - 2px);
    text-align: left;
    font-weight: 600;
    border-bottom: 1px solid #e6e9ee;
    vertical-align: middle;
    white-space: nowrap;
}

.tab-pane table thead th .th-title {
    display: inline-block;
    margin-right: 8px;
}

.tab-pane table tbody td {
    padding: 12px;
    border-bottom: 1px solid #e6e9ee;
    vertical-align: middle;
    word-break: break-word;
}

.tab-pane table tbody tr:nth-child(odd) {
    background: transparent;
}

.tab-pane table tbody tr:nth-child(even) {
    background: #fbfdff;
}

.tab-pane table tbody tr:hover {
    background: rgba(11, 116, 222, 0.04);
    transition: background 120ms ease-in-out;
}

.tab-pane table td.small,
.tab-pane table td.muted {
    font-size: 13px;
    color: #6b7280;
}

.tab-pane table .text-right {
    text-align: right;
}

.tab-pane table .text-center {
    text-align: center;
}

.tab-pane table.table-compact thead th,
.tab-pane table.table-compact tbody td {
    padding: 8px;
    font-size: 13px;
}

.form-control{
    padding: 10px !important;
    border: 1px solid #33333355 !important;
    margin-top: 12px;
}

input[type=checkbox] ~ label{
    font-size: 18px !important;
    padding-left: 20px !important;
}

input[type=radio] ~ label::before {
    display:none;
}

input[type=checkbox] ~ label, input[type=radio] ~ label {
    font-size: 32px;
    margin: 20px 0;
    padding-left: 8px;
}

textarea.form-control {
    font-size:16px;
}
.rating-stars input { display: none; }
.rating-stars label {
  font-size: 24px;
  color: #ccc;
  cursor: pointer;
  transition: color 0.2s;
}
.rating-stars input:checked ~ label,
.rating-stars label:hover,
.rating-stars label:hover ~ label {
  color: #ffb400;
}
.related-products-title{
    font-size: 24px;
    color: var(--color-main);
}
.related-products-main{
    background: var(--color-white);
    border-radius: 12px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    padding: 30px;
}

.tab-content ul,.tab-content ol{
   font-size: 18px;
   letter-spacing: 1.5px;
   line-height: 32px;
}

.woocommerce button.single_add_to_cart_button {
  background-color: #007bff;
  color: #ffffff;
  border-radius: 5px;
  padding: 10px 25px;
  font-size: 16px;
  text-transform: uppercase;
  transition: background-color 0.3s ease;
}

.woocommerce button.single_add_to_cart_button:hover {
  background-color: #0056b3;
}

.woocommerce div.product form.cart input.qty {
  width: 60px;
  height: 40px;
  text-align: center;
  border: 1px solid #ccc;
  margin-right: 15px;
  box-shadow: none;
  border-radius: 5px;
}

.woocommerce div.product form.cart {
  display: flex;
  align-items: center;
  gap: 15px;
}

@media screen and (max-width: 580px) {
    .rts-section-gap-single-products {padding: 15px 15px;}
    .product-thumbnails {margin: 20px 0;}
}