
/* JUNIOR09 CLEAN RESET - bản dọn sạch để tránh các fix cũ chồng nhau */

/* Mobile shell mặc định ẩn trên PC */
.j09-clean-mobile-shell{display:none!important}

/* Icon danh mục mới, không dùng class cũ shortcut-row/junior-categories */
.j09-clean-categories{
  width:min(1220px,calc(100% - 32px))!important;
  margin:16px auto!important;
  display:grid!important;
  grid-template-columns:repeat(8,1fr)!important;
  gap:12px!important;
}
.j09-clean-cat-item{
  min-height:106px!important;
  padding:14px 8px!important;
  border:1px solid #eee!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(0,0,0,.035)!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.j09-clean-cat-item span{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.j09-clean-cat-item span img{
  display:block!important;
  width:50px!important;
  height:50px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:none!important;
}
.j09-clean-cat-item b{
  display:block!important;
  color:#111827!important;
  font-family:Calibri,Arial,sans-serif!important;
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:700!important;
}

/* Fix giỏ hàng PC */
@media(min-width:769px){
  .header-main{
    grid-template-columns:230px minmax(320px,1fr) 220px 90px!important;
    overflow:visible!important;
  }
  .brand:before,.brand:after{display:none!important;content:none!important}
  .brand img.logo-desktop{
    display:block!important;
    width:178px!important;
    max-height:46px!important;
    object-fit:contain!important;
  }
  .hotline{
    grid-column:3!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    padding:0!important;
    background:transparent!important;
    overflow:visible!important;
  }
  .hotline .header-phone-img{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:12px!important;
    background:#fff1f1!important;
    display:grid!important;
    place-items:center!important;
  }
  .hotline .header-phone-img img{
    width:25px!important;
    height:25px!important;
    object-fit:contain!important;
  }
  .hotline div{
    display:block!important;
    position:static!important;
    transform:none!important;
    width:auto!important;
    max-width:none!important;
    text-align:left!important;
  }
  .hotline div small{
    display:block!important;
    color:#6b7280!important;
    font-size:12px!important;
    line-height:1.15!important;
  }
  .hotline div b{
    display:block!important;
    color:#ff3333!important;
    font-size:18px!important;
    line-height:1.15!important;
    white-space:nowrap!important;
  }
  .cart-link{
    grid-column:4!important;
    position:relative!important;
    width:90px!important;
    height:62px!important;
    min-width:90px!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    color:#111827!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    overflow:visible!important;
  }
  .cart-link .cart-img{
    display:block!important;
    width:31px!important;
    height:31px!important;
    object-fit:contain!important;
    filter:none!important;
  }
  .cart-link em{
    position:absolute!important;
    top:4px!important;
    right:23px!important;
    min-width:19px!important;
    height:19px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:999px!important;
    background:#ff3333!important;
    color:#fff!important;
    font-size:11px!important;
    font-style:normal!important;
    font-weight:800!important;
  }
  .cart-link small{
    display:block!important;
    color:#111827!important;
    font-size:12px!important;
    line-height:1.1!important;
  }
}

/* Mobile: bỏ padding-top cũ gây khoảng trắng + dùng header mobile riêng */
@media(max-width:768px){
  html,body{
    max-width:100%!important;
    overflow-x:hidden!important;
    background:#fff!important;
  }
  body{
    padding-top:0!important; /* QUAN TRỌNG: xóa khoảng trắng do CSS cũ body{padding-top:100px} */
  }

  /* Ẩn hoàn toàn top/header cũ trên mobile */
  body > .top-marquee,
  body header.site-header,
  body .site-header{
    display:none!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
  }

  .j09-clean-mobile-shell{
    display:block!important;
    margin:0!important;
    padding:0!important;
    background:#ff3333!important;
    position:relative!important;
    z-index:1000!important;
  }
  .j09-clean-marquee{
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
    background:#ff3333!important;
    color:#fff!important;
    overflow:hidden!important;
    font-size:12px!important;
    line-height:28px!important;
    font-weight:800!important;
  }
  .j09-clean-marquee span{
    display:block!important;
    width:100%!important;
    height:28px!important;
    line-height:28px!important;
    padding:0 8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    animation:none!important;
    transform:none!important;
  }
  .j09-clean-mobile-header{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr) 42px 42px!important;
    gap:6px!important;
    align-items:center!important;
    margin:0!important;
    padding:7px 8px!important;
    background:#ff3333!important;
    overflow:visible!important;
  }
  .j09-clean-logo{
    grid-column:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    color:#fff!important;
    font-family:Arial,sans-serif!important;
    font-size:25px!important;
    line-height:1!important;
    font-weight:900!important;
    font-style:italic!important;
    letter-spacing:-2px!important;
  }
  .j09-clean-search{
    grid-column:2!important;
    height:38px!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    background:#fff!important;
    overflow:hidden!important;
    display:flex!important;
  }
  .j09-clean-search input{
    min-width:0!important;
    flex:1!important;
    height:38px!important;
    border:0!important;
    outline:0!important;
    padding:0 10px!important;
    font-size:13px!important;
    background:#fff!important;
  }
  .j09-clean-search button{
    width:40px!important;
    min-width:40px!important;
    height:38px!important;
    border:0!important;
    padding:0!important;
    border-radius:0 999px 999px 0!important;
    background:#ff3333!important;
    color:#fff!important;
    display:grid!important;
    place-items:center!important;
  }
  .j09-clean-search .svg-icon{
    width:18px!important;
    height:18px!important;
    stroke:#fff!important;
  }
  .j09-clean-phone{
    grid-column:3!important;
    width:42px!important;
    min-width:42px!important;
    height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative!important;
    overflow:visible!important;
  }
  .j09-clean-phone img{
    width:27px!important;
    height:27px!important;
    object-fit:contain!important;
    filter:brightness(0) invert(1)!important;
  }
  .j09-clean-phone b{
    position:absolute!important;
    top:30px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    width:48px!important;
    max-width:48px!important;
    overflow:hidden!important;
    color:#fff!important;
    font-size:7.5px!important;
    line-height:1!important;
    font-weight:800!important;
    white-space:nowrap!important;
    text-align:center!important;
    letter-spacing:.25px!important;
  }
  .j09-clean-cart{
    grid-column:4!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.14)!important;
    display:grid!important;
    place-items:center!important;
    position:relative!important;
    overflow:visible!important;
  }
  .j09-clean-cart img{
    width:28px!important;
    height:28px!important;
    object-fit:contain!important;
    filter:brightness(0) invert(1)!important;
  }
  .j09-clean-cart em{
    position:absolute!important;
    right:-2px!important;
    top:-8px!important;
    min-width:18px!important;
    height:18px!important;
    border-radius:50%!important;
    background:#df001a!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:900!important;
    font-style:normal!important;
    display:grid!important;
    place-items:center!important;
  }

  .hero-section.mobile-compact-hero{
    margin:0!important;
    padding:8px 6px 10px!important;
    background:#fff!important;
  }
  .hero-section.mobile-compact-hero .container{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }

  .j09-clean-categories{
    width:calc(100% - 12px)!important;
    margin:8px auto 12px!important;
    padding:14px 8px!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:12px 4px!important;
    background:#fff!important;
    border:1px solid #ececec!important;
    border-radius:14px!important;
    box-shadow:0 5px 16px rgba(0,0,0,.035)!important;
  }
  .j09-clean-cat-item{
    height:76px!important;
    min-height:76px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    overflow:visible!important;
  }
  .j09-clean-cat-item span{
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    margin:0 auto!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .j09-clean-cat-item span img{
    display:block!important;
    width:44px!important;
    height:44px!important;
    object-fit:contain!important;
    background:transparent!important;
    filter:none!important;
  }
  .j09-clean-cat-item b{
    display:block!important;
    min-height:26px!important;
    max-height:30px!important;
    color:#111827!important;
    font-family:Calibri,Arial,sans-serif!important;
    font-size:12px!important;
    line-height:1.1!important;
    font-weight:700!important;
    text-align:center!important;
    overflow:hidden!important;
  }

  .cps-deal-section{
    width:calc(100% - 12px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Giữ contact mới, chặn contact cũ quay lại */
.floating-contact,.contact-overlay{display:none!important}
.j09-contact-fab{
  position:fixed!important;
  right:18px!important;
  bottom:86px!important;
  width:54px!important;
  height:54px!important;
  z-index:9999!important;
}
@media(max-width:768px){
  .j09-contact-fab{
    right:12px!important;
    bottom:86px!important;
  }
}


/* CUT ICON OVERRIDE v2 - icon được crop từ ảnh đã tạo */
.j09-clean-cat-item span img{
  width:58px!important;
  height:58px!important;
  object-fit:contain!important;
}
@media(max-width:768px){
  .j09-clean-cat-item span{
    width:48px!important;
    height:48px!important;
    min-height:48px!important;
  }
  .j09-clean-cat-item span img{
    width:48px!important;
    height:48px!important;
    object-fit:contain!important;
  }
}

/* ===== J09 RATING STAR FIX ===== */
.rating-stars{
  position:relative!important;
  display:inline-block!important;
  width:max-content!important;
  font-family:Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1!important;
  letter-spacing:1px!important;
  color:#d1d5db!important;
  vertical-align:-1px!important;
  flex:0 0 auto!important;
}
.rating-stars-base{
  display:block!important;
  color:#d1d5db!important;
  white-space:nowrap!important;
}
.rating-stars-fill{
  position:absolute!important;
  left:0!important;
  top:0!important;
  display:block!important;
  color:#f6b100!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  width:0;
}
.rating-number{
  color:#111827!important;
  font-weight:700!important;
  margin-left:3px!important;
  line-height:1!important;
}
.card-rating-row{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  margin-top:8px!important;
  color:#4b5563!important;
  font-size:13px!important;
  line-height:1!important;
}
.card-rating-row .stars{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  color:#111827!important;
  flex:0 0 auto!important;
  min-width:0!important;
}
.card-rating-row .sold{
  margin-left:8px!important;
  color:#4b5563!important;
  font-size:13px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.card-rating-row .ship-fast + .stars{
  margin-left:4px!important;
}
.product-info .rating.rating-line,
.rating.rating-line{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  color:#f59e0b!important;
  margin:8px 0 12px!important;
  line-height:1.2!important;
}
.rating.rating-line .rating-number{
  color:#f59e0b!important;
  margin-left:1px!important;
}
.rating.rating-line span:not(.rating-stars):not(.rating-stars-base):not(.rating-stars-fill){
  color:#6b7280!important;
}
.rating-divider{
  color:#d1d5db!important;
  margin:0 2px!important;
}
.reviews .score{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.reviews .score .rating-stars{
  font-size:18px!important;
}
.review span .rating-stars,
.review .rating-stars{
  font-size:14px!important;
}
@media(max-width:768px){
  .card-rating-row{
    gap:5px!important;
    font-size:12px!important;
  }
  .card-rating-row .sold{
    margin-left:6px!important;
    font-size:12px!important;
  }
  .rating-stars{
    font-size:13px!important;
    letter-spacing:.5px!important;
  }
}

/* ===== J09 DEAL FOOTER RATING LAYOUT FIX ===== */
/* Deal sốc: tách "2 Giờ" lên 1 dòng, sao + đã bán nằm dòng dưới để không tràn */
.deal-card-foot{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) 28px!important;
  align-items:center!important;
  column-gap:6px!important;
  row-gap:6px!important;
  margin-top:8px!important;
  white-space:normal!important;
  overflow:visible!important;
}
.deal-card-foot .fast-2h{
  grid-column:1 / -1!important;
  grid-row:1!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  line-height:1!important;
}
.deal-card-foot .stars{
  grid-column:1!important;
  grid-row:2!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
  min-width:0!important;
}
.deal-card-foot .sold{
  grid-column:2!important;
  grid-row:2!important;
  margin-left:2px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:13px!important;
  color:#4b5563!important;
}
.deal-card-foot button{
  grid-column:3!important;
  grid-row:2!important;
  justify-self:end!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}

/* Card thường: nếu không đủ rộng thì "đã bán" tự xuống dòng, không chui sang card bên cạnh */
.card-rating-row{
  overflow:hidden!important;
}
.card-rating-row .sold{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Trang danh mục dùng card thường, cho sold xuống dòng khi màn hẹp */
.products-area .product-card .card-rating-row{
  flex-wrap:wrap!important;
  row-gap:5px!important;
}
.products-area .product-card .card-rating-row .sold{
  margin-left:0!important;
  flex:1 1 100%!important;
}

/* Trang chi tiết sản phẩm: sao, điểm, đánh giá, đã bán cách nhau rõ */
.product-info .rating.rating-line,
.rating.rating-line{
  gap:8px!important;
}
.rating.rating-line .rating-number{
  margin-right:2px!important;
}
.rating.rating-line .rating-divider{
  margin:0 4px!important;
}

@media(max-width:768px){
  .deal-card-foot{
    grid-template-columns:auto minmax(0,1fr) 24px!important;
    column-gap:5px!important;
    row-gap:5px!important;
  }
  .deal-card-foot .sold{
    font-size:12px!important;
  }
}



/* ===== ROUND FIX - 20/07 ===== */
@media(max-width:768px){
  .j09-clean-marquee span.is-marquee-run{display:inline-block!important;width:max-content!important;min-width:100%!important;animation:j09Marquee 14s linear infinite!important;overflow:visible!important;text-overflow:clip!important;padding-left:100%!important;}
  @keyframes j09Marquee{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

  /* Deal tabs: chỉ active 1 tab xanh, không méo */
  .cps-deal-section{border-radius:12px!important;overflow:hidden!important;border:2px solid #4d95ff!important;background:#eef7ff!important;}
  .cps-deal-top{display:grid!important;grid-template-columns:1fr!important;background:#fff!important;}
  .cps-deal-tabs{display:grid!important;grid-template-columns:repeat(3,1fr)!important;border-bottom:1px solid #9cc8ff!important;}
  .cps-deal-tabs button{height:58px!important;border:0!important;border-right:1px solid #cfe2ff!important;background:#fff!important;color:#0057a8!important;border-radius:0!important;box-shadow:none!important;font-size:11px!important;line-height:1.1!important;}
  .cps-deal-tabs button span,.cps-deal-tabs button b{display:block!important;}
  .cps-deal-tabs button.active{background:#137eff!important;color:#fff!important;box-shadow:none!important;border-radius:0 0 9px 0!important;}
  .cps-deal-tabs button:not(.active){background:#fff!important;color:#074273!important;}
  .cps-countdown{position:absolute!important;right:8px!important;top:8px!important;transform:scale(.82);transform-origin:right top;display:none!important;}

  /* Card sản phẩm mobile gọn hơn */
  .product-card.j09-product-card{min-height:auto!important;border-radius:10px!important;overflow:hidden!important;}
  .product-card.j09-product-card .img{height:150px!important;min-height:150px!important;padding:6px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;}
  .product-card.j09-product-card .img img{max-height:132px!important;width:100%!important;object-fit:contain!important;}
  .flash-card.j09-product-card .img{height:150px!important;min-height:150px!important;}
  .product-card.j09-product-card h3{min-height:34px!important;margin:7px 10px 5px!important;font-size:12px!important;line-height:1.25!important;font-weight:700!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  .product-card.j09-product-card .card-price{margin:0 10px 6px!important;display:flex!important;align-items:baseline!important;gap:6px!important;}
  .product-card.j09-product-card .card-price strong{font-size:15px!important;}
  .product-card.j09-product-card .card-price del{font-size:11px!important;}
  .card-rating-row{margin:0 10px 4px!important;gap:5px!important;flex-wrap:nowrap!important;font-size:12px!important;line-height:1.1!important;}
  .j09-rate-compact{display:inline-flex!important;align-items:center!important;gap:2px!important;color:#4b5563!important;font-size:12px!important;font-weight:400!important;white-space:nowrap!important;}
  .j09-one-star{color:#ffb000!important;font-size:13px!important;line-height:1!important;}
  .rating-number{font-weight:400!important;}
  .card-rating-row .sold{font-size:12px!important;font-weight:400!important;margin-left:3px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .ship-fast{display:inline-flex!important;align-items:center!important;gap:3px!important;width:max-content!important;max-width:calc(100% - 20px)!important;margin:0 10px 8px!important;padding:3px 6px!important;border-radius:6px!important;background:#fff2df!important;color:#ff6b00!important;font-size:11px!important;font-weight:700!important;line-height:1!important;}
  .ship-fast img{width:14px!important;height:14px!important;object-fit:contain!important;}
  .deal-card-foot{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;margin:4px 10px 8px!important;}
  .deal-card-foot .ship-fast{margin:0!important;order:1;}
  .deal-card-foot .j09-rate-compact{order:2;}
  .deal-card-foot .sold{order:3;margin-left:0!important;max-width:84px!important;}
  .deal-card-foot button{margin-left:auto!important;order:4;width:22px!important;height:22px!important;}

  /* Danh mục dọc mobile dùng icon PNG, đủ chiều rộng, không cắt */
  .mobile-category-browser{display:grid!important;grid-template-columns:74px minmax(0,1fr)!important;gap:8px!important;align-items:start!important;margin:0 auto 10px!important;padding:0 8px!important;}
  .mobile-cat-sidebar{width:74px!important;min-width:74px!important;max-height:none!important;overflow:visible!important;border-right:1px solid #eee!important;background:#fff!important;}
  .mobile-cat-sidebar a{width:70px!important;min-height:70px!important;padding:5px 2px!important;font-size:11px!important;line-height:1.05!important;white-space:normal!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;color:#111827!important;}
  .mobile-cat-sidebar a span{width:28px!important;height:28px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  .mobile-cat-sidebar a span img{width:28px!important;height:28px!important;object-fit:contain!important;display:block!important;}
  .mobile-cat-sidebar a .svg-icon{display:none!important;}
  .mobile-cat-sidebar a.active{background:#fff2f2!important;color:#e60012!important;border-left:3px solid #ff3333!important;border-radius:8px 0 0 8px!important;}
  .mobile-cat-content{min-height:0!important;padding-top:0!important;}
  .mobile-cat-title{margin-bottom:8px!important;}
  .mobile-cat-tabs{display:flex!important;gap:8px!important;overflow-x:auto!important;padding-bottom:4px!important;}
  .mobile-cat-tabs a{white-space:nowrap!important;}
  .category-banner{display:none!important;}
  .product-layout{margin-top:8px!important;}
  .products-area{padding-top:0!important;}
  .products-area .breadcrumb,.products-area>p{display:none!important;}
  .listing-head{align-items:center!important;margin-bottom:10px!important;}
  .listing-head h1{font-size:26px!important;line-height:1.1!important;margin:0!important;}
  .listing-head form select{font-size:14px!important;border-radius:8px!important;}

  /* Chi tiết sản phẩm */
  .product-detail{padding-bottom:120px!important;}
  .main-img{aspect-ratio:1/1!important;width:100%!important;object-fit:contain!important;border-radius:14px!important;background:#fff!important;}
  .thumbs{display:flex!important;gap:10px!important;align-items:center!important;overflow-x:auto!important;}
  .thumbs img,.thumbs .thumb-video{width:70px!important;height:70px!important;min-width:70px!important;border:1px solid #e5e7eb!important;border-radius:10px!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  .thumbs .thumb-video{flex-direction:column!important;color:#111827!important;font-weight:600!important;}
  .spec-icons{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;margin-top:10px!important;}
  .spec-icons span{min-height:64px!important;padding:7px 3px!important;border-radius:10px!important;background:#eff6ff!important;border:1px solid #cfe2ff!important;color:#165dff!important;text-align:center!important;}
  .spec-icons b{font-size:11px!important;line-height:1.05!important;}
  .spec-icons small{font-size:10px!important;line-height:1.05!important;}
  .description-card,.reviews,.spec-table-card{border-radius:14px!important;padding:14px!important;margin-bottom:14px!important;}
  .description-card h2,.reviews h2{font-size:22px!important;}
  .detail-feature-img,.description-card article img{width:100%!important;border-radius:12px!important;margin:8px 0 14px!important;object-fit:contain!important;}
  .reviews .score{align-items:center!important;gap:10px!important;}
  .review{padding:12px 0!important;border-bottom:1px solid #eee!important;}
  .review-head{display:flex!important;align-items:center!important;gap:6px!important;}
  .review-photos img{width:74px!important;height:74px!important;object-fit:cover!important;border-radius:10px!important;border:1px solid #eee!important;}
  .detail-hard-cta{height:auto!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.96)!important;box-shadow:0 -6px 18px rgba(0,0,0,.08)!important;}
  .sticky-price-line{display:grid!important;grid-template-columns:1fr auto auto!important;gap:8px!important;align-items:center!important;font-size:13px!important;margin-bottom:6px!important;}
  .sticky-price-line strong{font-size:18px!important;white-space:nowrap!important;}
  .sticky-action-row{display:grid!important;grid-template-columns:54px 1fr 54px!important;gap:8px!important;}
  .sticky-buy{height:52px!important;border-radius:10px!important;font-size:21px!important;}
  body.has-detail-sticky .j09-contact-fab{bottom:150px!important;right:12px!important;}
  body.j09-contact-open .j09-contact-fab{bottom:138px!important;}
  .j09-contact-menu{bottom:62px!important;gap:14px!important;}
  .j09-contact-item{margin:0!important;}

  /* Bảo hành */
  .warranty-layout-v2{display:block!important;}
  .warranty-tabs-v2{grid-template-columns:1fr!important;gap:8px!important;}
  .qr-row{display:grid!important;grid-template-columns:1fr 94px!important;gap:8px!important;}
  .qr-btn{font-size:11px!important;padding:0 6px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;color:#e60012!important;}
  .channel-select{font-weight:600!important;}
}

/* Desktop/Shared compact star */
.j09-rate-compact{display:inline-flex;align-items:center;gap:3px;color:#4b5563;font-weight:400;}
.j09-one-star{color:#ffb000;}
.ship-fast img{width:15px;height:15px;object-fit:contain;vertical-align:-2px;margin-right:3px;}

/* Modals */
.j09-video-modal,.j09-review-modal,.j09-qr-modal{position:fixed;inset:0;z-index:10050;background:rgba(0,0,0,.62);display:none;align-items:center;justify-content:center;padding:18px;}
.j09-video-modal.is-open,.j09-review-modal.is-open,.j09-qr-modal.is-open{display:flex;}
.j09-video-box{width:min(920px,100%);aspect-ratio:16/9;background:#000;border-radius:14px;position:relative;overflow:hidden;}
.j09-video-box iframe{width:100%;height:100%;border:0;display:block;}
.j09-modal-card{width:min(460px,100%);background:#fff;border-radius:16px;padding:18px;position:relative;box-shadow:0 18px 60px rgba(0,0,0,.25);}
.j09-modal-close{position:absolute;right:10px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#e60012;color:#fff;font-size:22px;line-height:1;}
.j09-review-modal label,.j09-qr-modal label{display:block;margin:10px 0;font-weight:700;}
.j09-review-modal input,.j09-review-modal select,.j09-review-modal textarea,.j09-qr-modal input{width:100%;border:1px solid #e5e7eb;border-radius:10px;padding:10px;margin-top:6px;}
.j09-review-modal textarea{min-height:90px;}
#j09QrVideo{width:100%;aspect-ratio:1/1;background:#111;border-radius:12px;object-fit:cover;}
.qr-note{color:#6b7280;font-size:13px;}


/* =========================================================
   JUNIOR09 UI TUNING 3 - font + mobile layout + contact/sticky
   ========================================================= */
:root{
  --j09-font: Arial, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --j09-red:#ff3038;
  --j09-red-dark:#e60012;
  --j09-blue:#137eff;
  --j09-text:#111827;
}
html,body,button,input,select,textarea,a,span,b,strong,small,label{
  font-family:var(--j09-font)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body{
  color:var(--j09-text)!important;
  font-size:14px!important;
  font-weight:400!important;
}
h1,h2,h3,h4,.listing-head h1,.mobile-cat-title b,.product-info h1,.mobile-product-title h1{
  letter-spacing:-.03em!important;
  font-weight:750!important;
}
button,.btn,input,select,textarea{
  font-size:14px!important;
}

/* contact overlay: nhẹ hơn, nút tách rời, không đè sticky quá nhiều */
.j09-contact-overlay{
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,.46)!important;
  backdrop-filter:blur(1.5px)!important;
  z-index:9996!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:.18s ease!important;
}
body.j09-contact-open .j09-contact-overlay{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
.j09-contact-fab{
  z-index:9998!important;
}
.j09-contact-main{
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  border:0!important;
  box-shadow:0 10px 26px rgba(230,0,18,.28)!important;
}
.j09-contact-menu{
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
  align-items:flex-end!important;
  position:absolute!important;
  right:0!important;
  bottom:68px!important;
  opacity:0!important;
  transform:translateY(8px)!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:.18s ease!important;
}
.j09-contact-fab.is-open .j09-contact-menu{
  opacity:1!important;
  transform:translateY(0)!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
.j09-contact-item{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  text-decoration:none!important;
}
.j09-contact-label{
  display:block!important;
  background:#fff!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  padding:9px 12px!important;
  border-radius:8px!important;
  box-shadow:0 6px 18px rgba(0,0,0,.12)!important;
  white-space:nowrap!important;
}
.j09-contact-circle{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  font-size:13px!important;
  font-weight:800!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
.j09-call .j09-contact-circle{background:#ffc21a!important;color:#fff!important;}
.j09-chat .j09-contact-circle{background:#10b65a!important;color:#fff!important;font-size:22px!important;letter-spacing:1px!important;}
.j09-zalo .j09-contact-circle{background:#fff!important;color:#1769ff!important;border:2px solid #1769ff!important;box-shadow:0 8px 22px rgba(23,105,255,.18)!important;}

@media(max-width:768px){
  html,body{font-size:14px!important;}
  .j09-clean-mobile-header{height:56px!important;min-height:56px!important;max-height:56px!important;}
  .j09-clean-logo{font-size:24px!important;letter-spacing:-2px!important;}
  .j09-clean-search input{font-size:13px!important;}
  .j09-clean-phone b{font-size:7px!important;}

  /* Deal tabs: chỉ 1 active, đều mép, không bị xanh nhầm */
  .cps-deal-section{
    width:calc(100% - 12px)!important;
    margin:10px auto 18px!important;
    border:2px solid #4d95ff!important;
    border-radius:12px!important;
    overflow:hidden!important;
    background:#eef7ff!important;
  }
  .cps-deal-top{display:block!important;background:#fff!important;}
  .cps-deal-tabs{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    border-bottom:1px solid #a7ceff!important;
    background:#fff!important;
  }
  .cps-deal-tabs button{
    height:56px!important;
    min-width:0!important;
    border:0!important;
    border-right:1px solid #cfe2ff!important;
    border-radius:0!important;
    background:#fff!important;
    box-shadow:none!important;
    color:#0057a8!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.1!important;
    padding:0 4px!important;
  }
  .cps-deal-tabs button.active{
    background:var(--j09-blue)!important;
    color:#fff!important;
    border-radius:0!important;
    box-shadow:inset 0 -3px 0 rgba(255,255,255,.18)!important;
  }
  .cps-deal-tabs button:not(.active){
    background:#fff!important;
    color:#074273!important;
  }

  /* Product cards mobile: font nhỏ hơn, ảnh gọn, không khoảng trắng quá lớn */
  .product-grid{
    gap:10px!important;
  }
  .product-card.j09-product-card,
  .flash-card.j09-product-card{
    border-radius:11px!important;
    overflow:hidden!important;
    background:#fff!important;
  }
  .product-card.j09-product-card .img,
  .flash-card.j09-product-card .img{
    height:128px!important;
    min-height:128px!important;
    padding:6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
  }
  .product-card.j09-product-card .img img,
  .flash-card.j09-product-card .img img{
    max-height:116px!important;
    width:100%!important;
    object-fit:contain!important;
  }
  .product-card.j09-product-card h3,
  .flash-card.j09-product-card h3{
    min-height:31px!important;
    max-height:31px!important;
    margin:7px 10px 6px!important;
    font-size:11.5px!important;
    line-height:1.32!important;
    font-weight:650!important;
    letter-spacing:-.01em!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .product-card.j09-product-card .card-price,
  .flash-card.j09-product-card .card-price{
    margin:0 10px 6px!important;
    gap:5px!important;
  }
  .product-card.j09-product-card .card-price strong,
  .flash-card.j09-product-card .card-price strong{
    font-size:14px!important;
    line-height:1.05!important;
  }
  .product-card.j09-product-card .card-price del,
  .flash-card.j09-product-card .card-price del{
    font-size:10.5px!important;
  }
  .card-rating-row{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    flex-wrap:nowrap!important;
    margin:0 10px 4px!important;
    font-size:11.5px!important;
    line-height:1.1!important;
    color:#4b5563!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  .j09-rate-compact{
    display:inline-flex!important;
    align-items:center!important;
    gap:2px!important;
    color:#4b5563!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:400!important;
    white-space:nowrap!important;
  }
  .j09-one-star{
    color:#ffb000!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:400!important;
  }
  .card-rating-row .sold{
    color:#4b5563!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:400!important;
    margin-left:2px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    min-width:0!important;
  }
  .ship-fast{
    margin:4px 10px 10px!important;
    padding:5px 8px!important;
    border-radius:8px!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:700!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:4px!important;
  }
  .ship-fast img{
    width:14px!important;
    height:14px!important;
    object-fit:contain!important;
  }

  /* Category mobile: bỏ khoảng trắng lớn, font gọn hơn */
  .mobile-category-browser{
    display:block!important;
    width:100%!important;
    margin:0 auto 8px!important;
    padding:0 8px 8px!important;
    background:#fff!important;
  }
  .mobile-cat-sidebar{
    width:100%!important;
    min-width:0!important;
    max-height:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    border-right:0!important;
    border-bottom:1px solid #f0f0f0!important;
    display:flex!important;
    gap:4px!important;
    padding:4px 0 6px!important;
    scrollbar-width:none!important;
  }
  .mobile-cat-sidebar::-webkit-scrollbar{display:none!important;}
  .mobile-cat-sidebar a{
    width:64px!important;
    min-width:64px!important;
    min-height:64px!important;
    padding:5px 2px!important;
    border-left:0!important;
    border-radius:10px!important;
    font-size:10.5px!important;
    line-height:1.05!important;
    flex:0 0 64px!important;
    color:#111827!important;
    background:#fff!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:3px!important;
  }
  .mobile-cat-sidebar a span{
    width:27px!important;
    height:27px!important;
  }
  .mobile-cat-sidebar a span img{
    width:27px!important;
    height:27px!important;
    object-fit:contain!important;
  }
  .mobile-cat-sidebar a.active{
    border-left:0!important;
    background:#fff1f1!important;
    color:var(--j09-red-dark)!important;
    box-shadow:inset 0 -2px 0 var(--j09-red)!important;
  }
  .mobile-cat-content{
    padding-top:8px!important;
  }
  .mobile-cat-title{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    margin:0 0 8px!important;
  }
  .mobile-cat-title b{
    font-size:21px!important;
    line-height:1.1!important;
    font-weight:750!important;
    letter-spacing:-.02em!important;
    max-width:70%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .mobile-cat-title a{
    font-size:12px!important;
    white-space:nowrap!important;
    color:var(--j09-red-dark)!important;
    font-weight:700!important;
  }
  .mobile-cat-tabs{
    display:flex!important;
    gap:8px!important;
    overflow-x:auto!important;
    padding:0 0 6px!important;
    scrollbar-width:none!important;
  }
  .mobile-cat-tabs::-webkit-scrollbar{display:none!important;}
  .mobile-cat-tabs a{
    white-space:nowrap!important;
    font-size:13px!important;
    padding:10px 14px!important;
    border-radius:10px!important;
    border:1px solid #e5e7eb!important;
    color:#111827!important;
    background:#fff!important;
  }
  .product-layout{
    margin-top:0!important;
    padding:0 8px!important;
  }
  .products-area{
    padding-top:0!important;
  }
  .listing-head{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:8px 0 10px!important;
  }
  .listing-head h1{
    font-size:22px!important;
    line-height:1.08!important;
    font-weight:760!important;
    margin:0!important;
    max-width:58%!important;
    display:block!important;
  }
  .listing-head form{
    margin-left:auto!important;
  }
  .listing-head form select{
    height:40px!important;
    font-size:13px!important;
    border-radius:10px!important;
    padding:0 8px!important;
    max-width:152px!important;
  }
  .mobile-filter-row{
    margin:8px 0 12px!important;
    gap:10px!important;
  }
  .mobile-filter-row button{
    height:44px!important;
    border-radius:12px!important;
    font-size:14px!important;
    font-weight:700!important;
  }

  /* Product detail font/spacing */
  .product-detail{
    padding-bottom:150px!important;
  }
  .mobile-product-title p{
    font-size:13px!important;
    line-height:1!important;
    margin:0 0 8px!important;
    font-weight:800!important;
  }
  .mobile-product-title h1{
    font-size:25px!important;
    line-height:1.08!important;
    margin:0 0 9px!important;
    font-weight:760!important;
    letter-spacing:-.03em!important;
  }
  .mobile-product-title .price strong{
    font-size:30px!important;
    line-height:1!important;
  }
  .mobile-product-title .price del{
    font-size:16px!important;
  }
  .mobile-product-title .price span{
    font-size:14px!important;
    border-radius:9px!important;
    padding:8px 10px!important;
  }
  .product-info > .rating.rating-line{
    display:none!important; /* Ẩn dòng rating lặp dưới ảnh */
  }
  .main-img{
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    border-radius:14px!important;
  }
  .thumbs img,.thumbs .thumb-video{
    width:66px!important;
    height:66px!important;
    min-width:66px!important;
    border-radius:10px!important;
  }
  .thumbs .thumb-video{
    font-size:13px!important;
    font-weight:700!important;
  }
  .spec-icons{
    display:flex!important;
    align-items:stretch!important;
    gap:8px!important;
    overflow-x:auto!important;
    margin-top:10px!important;
    padding-bottom:4px!important;
    grid-template-columns:none!important;
    scrollbar-width:none!important;
  }
  .spec-icons::-webkit-scrollbar{display:none!important;}
  .spec-icons span{
    width:112px!important;
    min-width:112px!important;
    min-height:58px!important;
    padding:7px 6px!important;
    border-radius:12px!important;
    background:#f3f8ff!important;
    border:1px solid #cfe2ff!important;
    color:#165dff!important;
    text-align:center!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
  }
  .spec-icons .svg-icon{
    width:18px!important;
    height:18px!important;
    margin-bottom:1px!important;
  }
  .spec-icons b{
    font-size:11px!important;
    line-height:1.08!important;
    font-weight:750!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .spec-icons small{
    font-size:10px!important;
    line-height:1.05!important;
    font-weight:500!important;
    display:-webkit-box!important;
    -webkit-line-clamp:1!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  .product-info .option > label:first-child,
  .option > label:first-child{
    font-size:14px!important;
    margin-bottom:8px!important;
  }
  .option label span{
    font-size:13px!important;
    font-weight:650!important;
  }
  .description-card,.reviews,.spec-table-card{
    padding:14px!important;
    border-radius:14px!important;
  }
  .description-card h2,.reviews h2,.spec-table-card h2{
    font-size:22px!important;
    line-height:1.15!important;
    font-weight:760!important;
    margin-bottom:12px!important;
  }
  .description-card article{
    font-size:15px!important;
    line-height:1.55!important;
  }
  .reviews .score b{
    font-size:32px!important;
    line-height:1!important;
  }
  .review-head b{
    font-size:14px!important;
  }
  .review p{
    font-size:14px!important;
    line-height:1.45!important;
  }

  /* Sticky mua hàng nhỏ hơn, không che phần phiên bản */
  .detail-hard-cta{
    height:auto!important;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.97)!important;
    box-shadow:0 -8px 20px rgba(0,0,0,.1)!important;
    z-index:9994!important;
  }
  .sticky-price-line{
    display:grid!important;
    grid-template-columns:1fr auto auto!important;
    align-items:center!important;
    gap:7px!important;
    margin-bottom:6px!important;
    font-size:13px!important;
    line-height:1!important;
  }
  .sticky-price-line span{
    font-size:13px!important;
    color:#111827!important;
    font-weight:500!important;
  }
  .sticky-price-line del{
    font-size:13px!important;
    color:#9ca3af!important;
  }
  .sticky-price-line strong{
    font-size:18px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .sticky-action-row{
    display:grid!important;
    grid-template-columns:52px 1fr 52px!important;
    gap:8px!important;
  }
  .sticky-call,.sticky-cart{
    height:50px!important;
    border-radius:11px!important;
  }
  .sticky-buy{
    height:50px!important;
    border-radius:11px!important;
    font-size:22px!important;
    line-height:1!important;
    font-weight:800!important;
  }
  .sticky-buy small{
    font-size:12px!important;
    margin-top:3px!important;
  }

  /* Floating call and contact: không đè sticky */
  body.has-detail-sticky .j09-contact-fab{
    right:14px!important;
    bottom:178px!important;
    width:54px!important;
    height:54px!important;
  }
  body.has-detail-sticky.j09-contact-open .j09-contact-fab{
    bottom:178px!important;
  }
  body:not(.has-detail-sticky) .j09-contact-fab{
    right:14px!important;
    bottom:88px!important;
  }
  .j09-contact-menu{
    bottom:68px!important;
    gap:15px!important;
  }
  .j09-contact-main{
    width:54px!important;
    height:54px!important;
  }
  .j09-contact-circle{
    width:50px!important;
    height:50px!important;
  }
  .j09-contact-label{
    font-size:12px!important;
    padding:9px 12px!important;
  }

  /* Warranty typography */
  .warranty-page-v2 h1,
  .warranty-page-v2 .warranty-title{
    font-size:28px!important;
    line-height:1.12!important;
    letter-spacing:-.03em!important;
  }
  .warranty-page-v2 label{
    font-size:14px!important;
    font-weight:700!important;
  }
  .warranty-page-v2 input,
  .warranty-page-v2 select,
  .warranty-page-v2 button{
    font-size:14px!important;
  }

  /* Bottom nav font đồng bộ */
  .mobile-bottom-nav a span{
    font-size:11.5px!important;
    line-height:1.1!important;
    font-weight:650!important;
  }
  .mobile-bottom-nav .svg-icon{
    width:22px!important;
    height:22px!important;
  }
}

/* =========================================================
   JUNIOR09 UI HOTFIX 4 - sau ảnh test
   ========================================================= */
@media(max-width:768px){
  .j09-clean-marquee{height:24px!important;min-height:24px!important;max-height:24px!important;line-height:24px!important;font-size:11px!important;font-weight:700!important;}
  .j09-clean-marquee span{height:24px!important;line-height:24px!important;}
  .j09-clean-mobile-header{height:54px!important;min-height:54px!important;max-height:54px!important;grid-template-columns:43px minmax(0,1fr) 38px 40px!important;gap:5px!important;padding:7px 7px!important;}
  .j09-clean-logo{font-size:22px!important;}
  .j09-clean-search,.j09-clean-search input,.j09-clean-search button{height:36px!important;}
  .j09-clean-search input{font-size:13px!important;padding:0 9px!important;}
  .j09-clean-search button{width:38px!important;min-width:38px!important;}
  .j09-clean-phone{width:38px!important;min-width:38px!important;height:42px!important;}
  .j09-clean-phone img{width:23px!important;height:23px!important;}
  .j09-clean-phone b{top:29px!important;width:44px!important;max-width:44px!important;font-size:6.8px!important;}
  .j09-clean-cart{width:40px!important;min-width:40px!important;height:40px!important;}
  .j09-clean-cart img{width:25px!important;height:25px!important;}

  .cps-deal-section{border-radius:11px!important;margin-top:10px!important;overflow:hidden!important;}
  .cps-deal-tabs button,.cps-deal-tabs button.active,.cps-deal-tabs button:not(.active){border-radius:0!important;transform:none!important;clip-path:none!important;}
  .cps-deal-tabs button:first-child.active{border-top-left-radius:9px!important;}
  .cps-deal-tabs button:last-child.active{border-top-right-radius:9px!important;}

  .cps-deal-section .product-card.j09-product-card,.cps-deal-section .flash-card.j09-product-card{min-height:0!important;}
  .cps-deal-section .product-card.j09-product-card .img,.cps-deal-section .flash-card.j09-product-card .img{height:118px!important;min-height:118px!important;padding:5px!important;}
  .cps-deal-section .product-card.j09-product-card .img img,.cps-deal-section .flash-card.j09-product-card .img img{max-height:108px!important;}
  .cps-deal-section .product-card.j09-product-card h3,.cps-deal-section .flash-card.j09-product-card h3{font-size:11.2px!important;min-height:30px!important;max-height:30px!important;line-height:1.32!important;margin:6px 9px 5px!important;}
  .cps-deal-section .product-card.j09-product-card .card-price strong,.cps-deal-section .flash-card.j09-product-card .card-price strong{font-size:13.5px!important;}
  .cps-deal-section .product-card.j09-product-card .promo-line,.cps-deal-section .flash-card.j09-product-card .promo-line,.cps-deal-section .product-card.j09-product-card .student-line,.cps-deal-section .flash-card.j09-product-card .student-line{font-size:10.4px!important;line-height:1!important;padding:6px 7px!important;margin-left:8px!important;margin-right:8px!important;border-radius:5px!important;}
  .cps-deal-section .deal-card-foot{padding:0 8px 8px!important;margin-top:5px!important;}
  .cps-deal-section .deal-card-foot .fast-2h,.cps-deal-section .ship-fast{font-size:10.5px!important;padding:5px 7px!important;}

  .products-area .product-grid .product-card.j09-product-card .img{height:132px!important;min-height:132px!important;}
  .products-area .product-grid .product-card.j09-product-card .img img{max-height:120px!important;}
  .products-area .product-grid .product-card.j09-product-card h3{font-size:11.5px!important;line-height:1.3!important;min-height:30px!important;max-height:30px!important;}
  .products-area .product-grid .card-rating-row{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:5px!important;}
  .products-area .product-grid .card-rating-row .sold{flex:1 1 auto!important;margin-left:1px!important;min-width:0!important;}

  body:not(.has-detail-sticky) .j09-contact-fab{right:14px!important;bottom:112px!important;width:52px!important;height:52px!important;}
  body:not(.has-detail-sticky).j09-contact-open .j09-contact-fab{bottom:112px!important;}
  body.has-detail-sticky .j09-contact-fab,body.has-detail-sticky.j09-contact-open .j09-contact-fab{right:14px!important;bottom:176px!important;width:52px!important;height:52px!important;}
  .j09-contact-main{width:52px!important;height:52px!important;border:2px solid rgba(255,255,255,.85)!important;}
  .j09-contact-main .j09-main-close{font-size:31px!important;line-height:1!important;transform:translateY(-1px)!important;}
  .j09-contact-menu{bottom:66px!important;gap:18px!important;right:0!important;}
  .j09-contact-circle{width:48px!important;height:48px!important;min-width:48px!important;}
  .j09-contact-label{font-size:12px!important;padding:8px 11px!important;border-radius:8px!important;}
  .j09-contact-fab.is-open .j09-contact-item:nth-child(1){transform:translateX(-4px)!important;}
  .j09-contact-fab.is-open .j09-contact-item:nth-child(2){transform:translateX(-42px)!important;}
  .j09-contact-fab.is-open .j09-contact-item:nth-child(3){transform:translateX(-22px)!important;}
  body.j09-contact-open .mobile-bottom-nav{opacity:.72!important;}
}


/* =========================================================
   HOTFIX 5 - MARQUEE + VIDEO CACHE
   ========================================================= */
@media(max-width:768px){
  /* Dòng ưu đãi chạy ngang luôn, không phụ thuộc JS add class */
  .j09-clean-marquee{
    justify-content:flex-start!important;
    overflow:hidden!important;
  }
  .j09-clean-marquee span,
  .j09-clean-marquee span.is-marquee-run{
    display:inline-block!important;
    width:max-content!important;
    min-width:100%!important;
    height:24px!important;
    line-height:24px!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
    padding-left:100%!important;
    animation:j09MarqueeRun 16s linear infinite!important;
    will-change:transform!important;
  }
  @keyframes j09MarqueeRun{
    0%{transform:translateX(0)}
    100%{transform:translateX(-100%)}
  }

  /* Popup liên hệ gọn lại để đỡ che card */
  body:not(.has-detail-sticky) .j09-contact-fab{
    bottom:108px!important;
  }
  body:not(.has-detail-sticky).j09-contact-open .j09-contact-fab{
    bottom:108px!important;
  }
  .j09-contact-main{
    width:52px!important;
    height:52px!important;
  }
  .j09-contact-main .j09-main-close{
    font-size:30px!important;
    line-height:1!important;
  }
  .j09-contact-circle{
    width:47px!important;
    height:47px!important;
    min-width:47px!important;
  }
  .j09-contact-label{
    font-size:12px!important;
    padding:8px 10px!important;
  }
  .j09-contact-menu{
    bottom:65px!important;
    gap:16px!important;
  }

  /* Modal video bảo đảm nổi lên trên overlay liên hệ/sticky */
  .j09-video-modal{
    z-index:10050!important;
  }
  .j09-video-box{
    z-index:10051!important;
  }
}

/* video modal fallback/shared */
.j09-video-modal{
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,.72)!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
}
.j09-video-modal.is-open{
  display:flex!important;
}
.j09-video-box{
  position:relative!important;
  width:min(920px,100%)!important;
  aspect-ratio:16/9!important;
  background:#000!important;
  border-radius:14px!important;
  overflow:hidden!important;
  box-shadow:0 18px 60px rgba(0,0,0,.35)!important;
}
.j09-video-box iframe{
  width:100%!important;
  height:100%!important;
  border:0!important;
  display:block!important;
}
.j09-video-box .j09-modal-close{
  position:absolute!important;
  right:8px!important;
  top:8px!important;
  z-index:2!important;
  width:36px!important;
  height:36px!important;
  border-radius:50%!important;
  border:0!important;
  background:#e60012!important;
  color:#fff!important;
  font-size:24px!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
}


/* =========================================================
   HOTFIX 6 - CONTACT MENU KHÔNG DÍNH / KHÔNG CHỒNG NÚT
   ========================================================= */
@media(max-width:768px){
  .j09-contact-fab{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    overflow:visible!important;
    z-index:10020!important;
  }

  body:not(.has-detail-sticky) .j09-contact-fab,
  body:not(.has-detail-sticky).j09-contact-open .j09-contact-fab{
    right:14px!important;
    bottom:106px!important;
  }

  body.has-detail-sticky .j09-contact-fab,
  body.has-detail-sticky.j09-contact-open .j09-contact-fab{
    right:14px!important;
    bottom:176px!important;
  }

  .j09-contact-main{
    position:absolute!important;
    right:0!important;
    bottom:0!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    min-height:54px!important;
    border-radius:50%!important;
    z-index:3!important;
    box-shadow:0 10px 24px rgba(230,0,18,.32)!important;
  }

  .j09-contact-main .j09-main-close{
    font-size:30px!important;
    line-height:1!important;
    transform:translateY(-1px)!important;
  }

  .j09-contact-menu{
    position:absolute!important;
    right:0!important;
    bottom:66px!important;
    width:210px!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-end!important;
    gap:13px!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(8px)!important;
    transition:.18s ease!important;
    overflow:visible!important;
    z-index:2!important;
  }

  .j09-contact-fab.is-open .j09-contact-menu{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .j09-contact-item,
  .j09-contact-fab.is-open .j09-contact-item,
  .j09-contact-fab.is-open .j09-contact-item:nth-child(1),
  .j09-contact-fab.is-open .j09-contact-item:nth-child(2),
  .j09-contact-fab.is-open .j09-contact-item:nth-child(3){
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    margin:0!important;
    width:auto!important;
    min-width:0!important;
    height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:9px!important;
    text-decoration:none!important;
    overflow:visible!important;
  }

  .j09-contact-label{
    position:static!important;
    display:block!important;
    height:32px!important;
    line-height:32px!important;
    padding:0 11px!important;
    border-radius:8px!important;
    background:#fff!important;
    color:#111827!important;
    font-size:12px!important;
    font-weight:700!important;
    white-space:nowrap!important;
    box-shadow:0 6px 16px rgba(0,0,0,.14)!important;
  }

  .j09-contact-circle{
    position:static!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
    font-size:13px!important;
    font-weight:800!important;
  }

  .j09-chat .j09-contact-circle{
    font-size:22px!important;
    letter-spacing:1px!important;
  }

  .j09-zalo .j09-contact-circle{
    font-size:13px!important;
  }

  .j09-contact-overlay{
    z-index:10010!important;
  }

  body.j09-contact-open .mobile-bottom-nav{
    opacity:.55!important;
  }
}


/* =========================================================
   HOTFIX 7 - VIDEO PAGE + ANNOUNCEMENT
   ========================================================= */
@media(max-width:768px){
  .j09-clean-mobile-shell{
    display:block!important;
    background:#ff3038!important;
  }
  .j09-clean-marquee{
    display:flex!important;
    height:25px!important;
    min-height:25px!important;
    max-height:25px!important;
    line-height:25px!important;
    background:#ff3038!important;
    color:#fff!important;
    overflow:hidden!important;
    align-items:center!important;
    justify-content:flex-start!important;
    font-size:11.5px!important;
    font-weight:800!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .j09-clean-marquee span,
  .j09-clean-marquee span.is-marquee-run{
    display:inline-block!important;
    width:max-content!important;
    min-width:100%!important;
    height:25px!important;
    line-height:25px!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
    padding-left:100%!important;
    animation:j09MarqueeRun7 15s linear infinite!important;
    transform:none;
    will-change:transform!important;
  }
  @keyframes j09MarqueeRun7{
    0%{transform:translateX(0)}
    100%{transform:translateX(-100%)}
  }

  .videos-page-v2{
    padding:12px 10px 90px!important;
  }
  .videos-page-v2 h1{
    display:none!important;
  }
  .videos-intro{
    font-size:16px!important;
    line-height:1.45!important;
    margin:0 0 14px!important;
    color:#111827!important;
  }
  .video-page-list{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }
  .video-list-card{
    background:#fff!important;
    border-radius:0!important;
    overflow:visible!important;
  }
  .video-thumb{
    position:relative!important;
    display:block!important;
    width:100%!important;
    aspect-ratio:16/9!important;
    background:#000!important;
    border:1px solid #ddd!important;
    overflow:hidden!important;
    text-decoration:none!important;
  }
  .video-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
  }
  .video-duration{
    position:absolute!important;
    right:4px!important;
    bottom:4px!important;
    background:rgba(0,0,0,.75)!important;
    color:#fff!important;
    font-size:12px!important;
    line-height:1!important;
    padding:4px 6px!important;
    border-radius:4px!important;
  }
  .video-play-badge{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:52px!important;
    height:52px!important;
    border-radius:50%!important;
    background:rgba(230,0,18,.92)!important;
    color:#fff!important;
    display:grid!important;
    place-items:center!important;
    font-size:22px!important;
    box-shadow:0 8px 24px rgba(0,0,0,.28)!important;
    opacity:.0!important;
    transition:.15s!important;
  }
  .video-thumb:active .video-play-badge,
  .video-thumb:hover .video-play-badge{
    opacity:1!important;
  }
  .video-meta-v2{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr) 28px!important;
    gap:8px!important;
    padding:8px 0 0!important;
    align-items:start!important;
  }
  .video-channel-logo{
    width:34px!important;
    height:34px!important;
    border-radius:50%!important;
    background:#ff7a1a!important;
    color:#fff!important;
    display:grid!important;
    place-items:center!important;
    font-size:10px!important;
    font-weight:800!important;
  }
  .video-meta-v2 h2{
    margin:0!important;
    font-size:17px!important;
    line-height:1.18!important;
    font-weight:800!important;
    letter-spacing:-.02em!important;
  }
  .video-meta-v2 h2 a{
    color:#111827!important;
    text-decoration:none!important;
  }
  .video-meta-v2 p{
    margin:2px 0 0!important;
    font-size:12px!important;
    color:#6b7280!important;
    line-height:1.25!important;
  }
  .video-more{
    border:0!important;
    background:transparent!important;
    color:#111827!important;
    font-size:20px!important;
    line-height:1!important;
    padding:0!important;
  }
}

.j09-video-modal{
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,.78)!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
  z-index:12000!important;
}
.j09-video-modal.is-open{
  display:flex!important;
}
.j09-video-box{
  position:relative!important;
  width:min(920px,100%)!important;
  aspect-ratio:16/9!important;
  background:#000!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
.j09-video-box iframe{
  width:100%!important;
  height:100%!important;
  border:0!important;
  display:block!important;
}
.j09-video-box .j09-modal-close{
  position:absolute!important;
  right:8px!important;
  top:8px!important;
  z-index:2!important;
  width:36px!important;
  height:36px!important;
  border:0!important;
  border-radius:50%!important;
  background:#e60012!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:24px!important;
  line-height:1!important;
}


/* =========================================================
   HOTFIX 8 - QR SCANNER
   ========================================================= */
.j09-qr-modal{
  position:fixed!important;
  inset:0!important;
  background:rgba(0,0,0,.58)!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
  z-index:12020!important;
}
.j09-qr-modal.is-open{
  display:flex!important;
}
.j09-qr-modal .qr-modal-card{
  position:relative!important;
  width:min(520px,100%)!important;
  max-height:calc(100vh - 32px)!important;
  overflow:auto!important;
  background:#fff!important;
  border-radius:22px!important;
  padding:22px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.28)!important;
}
.j09-qr-modal h3{
  margin:0 54px 18px 0!important;
  font-size:28px!important;
  line-height:1.15!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
  color:#111827!important;
}
.j09-qr-modal .j09-modal-close{
  position:absolute!important;
  right:16px!important;
  top:16px!important;
  width:50px!important;
  height:50px!important;
  border-radius:50%!important;
  border:0!important;
  background:#e60012!important;
  color:#fff!important;
  font-size:36px!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  z-index:3!important;
  box-shadow:0 8px 22px rgba(230,0,18,.25)!important;
}
.qr-video-wrap{
  position:relative!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  background:#111!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
#j09QrVideo{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:#111!important;
  display:block!important;
}
.qr-scan-frame{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:70%!important;
  height:70%!important;
  transform:translate(-50%,-50%)!important;
  border:3px solid rgba(255,255,255,.88)!important;
  border-radius:16px!important;
  box-shadow:0 0 0 999px rgba(0,0,0,.12), 0 0 20px rgba(255,48,56,.35)!important;
  pointer-events:none!important;
}
.qr-note{
  font-size:15px!important;
  line-height:1.45!important;
  color:#6b7280!important;
  margin:14px 0 12px!important;
}
#j09QrManual{
  width:100%!important;
  height:48px!important;
  border:1px solid #e5e7eb!important;
  border-radius:12px!important;
  padding:0 14px!important;
  font-size:15px!important;
  margin-bottom:10px!important;
}
.qr-file-pick{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:42px!important;
  margin:0 0 10px!important;
  border:1px dashed #ff9aa0!important;
  background:#fff5f5!important;
  color:#e60012!important;
  border-radius:12px!important;
  font-size:14px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
.qr-file-pick input{
  display:none!important;
}
@media(max-width:768px){
  .j09-qr-modal{
    padding:14px!important;
    align-items:center!important;
  }
  .j09-qr-modal .qr-modal-card{
    width:100%!important;
    max-height:calc(100vh - 120px)!important;
    border-radius:20px!important;
    padding:20px!important;
  }
  .j09-qr-modal h3{
    font-size:25px!important;
    margin-right:52px!important;
  }
  .j09-qr-modal .j09-modal-close{
    width:46px!important;
    height:46px!important;
    font-size:32px!important;
  }
  .qr-note{
    font-size:14px!important;
  }
}

/* =========================================================
   HOTFIX 10 - ROLLBACK QR VIDEO + NATIVE MARQUEE
   ========================================================= */
.j09-clean-marquee{display:block!important;height:25px!important;min-height:25px!important;max-height:25px!important;line-height:25px!important;overflow:hidden!important;background:#ff3038!important;color:#fff!important;opacity:1!important;visibility:visible!important}
.j09-marquee-native{display:block!important;width:100%!important;height:25px!important;line-height:25px!important;color:#fff!important;font-size:11.5px!important;font-weight:800!important;white-space:nowrap!important}
.j09-clean-marquee span,.j09-marquee-track{display:none!important}
.j09-qr-modal{position:fixed!important;inset:0!important;background:rgba(0,0,0,.58)!important;display:none!important;align-items:center!important;justify-content:center!important;padding:16px!important;z-index:12020!important}
.j09-qr-modal.is-open{display:flex!important}
.j09-qr-modal .qr-modal-card{position:relative!important;width:min(520px,100%)!important;max-height:calc(100vh - 32px)!important;overflow:auto!important;background:#fff!important;border-radius:22px!important;padding:22px!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important}
.j09-qr-modal h3{margin:0 54px 18px 0!important;font-size:28px!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-.03em!important;color:#111827!important}
.j09-qr-modal .j09-modal-close{position:absolute!important;right:16px!important;top:16px!important;width:50px!important;height:50px!important;border-radius:50%!important;border:0!important;background:#e60012!important;color:#fff!important;font-size:36px!important;line-height:1!important;display:grid!important;place-items:center!important;z-index:3!important;box-shadow:0 8px 22px rgba(230,0,18,.25)!important}
.qr-video-wrap{position:relative!important;width:100%!important;aspect-ratio:1/1!important;background:#111!important;border-radius:16px!important;overflow:hidden!important}
#j09QrVideo{width:100%!important;height:100%!important;object-fit:cover!important;background:#111!important;display:block!important}
.qr-scan-frame{position:absolute!important;left:50%!important;top:50%!important;width:72%!important;height:72%!important;transform:translate(-50%,-50%)!important;border:3px solid rgba(255,255,255,.92)!important;border-radius:16px!important;box-shadow:0 0 0 999px rgba(0,0,0,.08),0 0 22px rgba(255,48,56,.35)!important;pointer-events:none!important}
.qr-note{font-size:15px!important;line-height:1.45!important;color:#6b7280!important;margin:14px 0 12px!important}
#j09QrManual{width:100%!important;height:48px!important;border:1px solid #e5e7eb!important;border-radius:12px!important;padding:0 14px!important;font-size:15px!important;margin-bottom:10px!important}
.qr-file-pick{display:flex!important;align-items:center!important;justify-content:center!important;height:42px!important;margin:0 0 10px!important;border:1px dashed #ff9aa0!important;background:#fff5f5!important;color:#e60012!important;border-radius:12px!important;font-size:14px!important;font-weight:700!important;cursor:pointer!important}
.qr-file-pick input{display:none!important}
@media(max-width:768px){.j09-qr-modal{padding:14px!important}.j09-qr-modal .qr-modal-card{width:100%!important;max-height:calc(100vh - 120px)!important;border-radius:20px!important;padding:18px!important}.j09-qr-modal h3{font-size:24px!important;line-height:1.12!important;margin:0 54px 14px 0!important}.j09-qr-modal .j09-modal-close{width:46px!important;height:46px!important;font-size:32px!important}.qr-note{font-size:14px!important}}

