/*
Theme Name: Điện Máy Hoàng Phúc
Theme URI: https://dienmayhoangphuc.local
Author: Điện Máy Hoàng Phúc Team
Description: Giao diện thương mại điện tử cho Điện Máy Hoàng Phúc - WooCommerce
Version: 2.0-checkout-sync
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2
Text Domain: dienmay-hoang-phuc
WC requires at least: 8.0
WC tested up to: 9.0
*/
/* ============================================================
   ĐIỆN MÁY HOÀNG PHÚC — GIAO DIỆN THƯƠNG MẠI ĐIỆN TỬ
   Primary: #1a73e8 (xanh dương DMX)
   Red: #c60004 (đỏ DMX flash sale)
   Font: Inter (như DMX)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/* ── Reset ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:14px;scroll-behavior:smooth}
body{font-family:'Inter',Arial,sans-serif;background:#f4f4f4;color:#333;min-width:320px;line-height:1.5}
a{text-decoration:none;color:inherit;transition:.2s}
ul{list-style:none}
img{max-width:100%;display:block;border:0}
button{cursor:pointer;border:none;background:none;font-family:inherit;outline:0}
input,select,textarea{font-family:inherit;outline:0}

/* ── Variables ─────────────────────────────────────────────── */
:root{
  --blue:#1a73e8;
  --blue-dark:#1557b0;
  --blue-light:#e8f0fe;
  --red:#c60004;
  --red-dark:#a00003;
  --orange:#f97e0f;
  --green:#10984b;
  --yellow:#ffd700;
  --text:#333;
  --text-2:#666;
  --text-3:#999;
  --border:#e0e0e0;
  --bg:#f4f4f4;
  --white:#fff;
  --shadow:0 1px 4px rgba(0,0,0,.1);
  --shadow-md:0 4px 16px rgba(0,0,0,.12);
  --radius:4px;
  --radius-lg:8px;
  --container:1200px;
}

/* ── Utilities ─────────────────────────────────────────────── */
.container{max-width:var(--container);margin:0 auto;padding:0 10px}
.hidden{display:none!important}
.text-red{color:var(--red)}
.text-blue{color:var(--blue)}
.text-green{color:var(--green)}
.fw-bold{font-weight:700}
.fw-600{font-weight:600}

/* ── HEADER ────────────────────────────────────────────────── */
.site-header{background:var(--blue);position:sticky;top:0;z-index:1000;box-shadow:0 2px 6px rgba(0,0,0,.2)}
.header-main{display:flex;align-items:center;gap:12px;padding:10px 0;min-height:56px}

/* Logo */
.header-logo{display:flex;align-items:center;gap:10px;flex-shrink:0;color:#fff}
.logo-icon{font-size:32px;line-height:1}
.logo-text-wrap{}
.logo-name{font-size:18px;font-weight:900;line-height:1;color:#fff}
.logo-tagline{font-size:10px;color:rgba(255,255,255,.8);margin-top:1px}

/* Search */
.header-search{flex:1;max-width:500px;position:relative}
.search-form{display:flex;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.search-input{flex:1;padding:9px 14px;font-size:14px;border:none;color:#333;background:transparent}
.search-input::placeholder{color:#aaa}
.search-btn{padding:0 16px;background:var(--orange);color:#fff;font-size:20px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:.2s}
.search-btn:hover{background:#e06e0d}
.search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border-radius:4px;box-shadow:0 4px 20px rgba(0,0,0,.15);z-index:999;display:none;border:1px solid #eee}
.search-dropdown.show{display:block}
.search-suggest-item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;border-bottom:1px solid #f5f5f5;transition:.15s}
.search-suggest-item:hover{background:#f8f9ff}
.search-suggest-img{width:44px;height:44px;object-fit:contain;border-radius:4px;background:#fafafa;padding:2px;flex-shrink:0}
.search-suggest-name{font-size:13px;font-weight:500;color:#333;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.search-suggest-price{font-size:13px;color:var(--red);font-weight:700;margin-top:2px}
.search-no-result{padding:20px;text-align:center;color:#999;font-size:13px}
.search-view-all{padding:10px 14px;text-align:center;background:#f8f9ff;font-size:13px;color:var(--blue);font-weight:600;cursor:pointer;border-top:1px solid #eee}
.search-view-all:hover{background:#e8f0fe}

/* Header Right */
.header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}
.header-btn{display:flex;flex-direction:column;align-items:center;color:#fff;font-size:11px;gap:2px;padding:4px 10px;border-radius:4px;transition:.2s;position:relative;cursor:pointer;white-space:nowrap}
.header-btn:hover{background:rgba(255,255,255,.15)}
.header-btn-icon{font-size:22px;line-height:1}
.cart-count{position:absolute;top:0;right:4px;background:var(--red);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px}
.header-hotline{display:flex;flex-direction:column;color:#fff;line-height:1.3}
.hotline-label-small{font-size:10px;opacity:.8}
.hotline-number{font-size:14px;font-weight:700;color:#ffd700}
.header-location{display:flex;align-items:center;gap:5px;color:#fff;font-size:12px;padding:5px 10px;border-radius:4px;border:1px solid rgba(255,255,255,.3);cursor:pointer;transition:.2s;background:rgba(255,255,255,.1)}
.header-location:hover{background:rgba(255,255,255,.2)}

/* Mini Cart */
.mini-cart-wrap{position:relative}
.mini-cart-dropdown{position:absolute;top:calc(100% + 8px);right:-10px;width:340px;background:#fff;border-radius:6px;box-shadow:0 8px 30px rgba(0,0,0,.2);z-index:999;display:none;border-top:3px solid var(--blue)}
.mini-cart-dropdown.show{display:block}
.mini-cart-hd{padding:12px 14px;font-weight:700;font-size:14px;border-bottom:1px solid #f0f0f0}
.mini-cart-body{max-height:320px;overflow-y:auto}
.mini-cart-row{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid #f8f8f8;align-items:center}
.mini-cart-img{width:50px;height:50px;object-fit:contain;background:#f8f8f8;border-radius:4px;flex-shrink:0;padding:3px}
.mini-cart-info{flex:1;min-width:0}
.mini-cart-name{font-size:12px;font-weight:500;color:#333;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}
.mini-cart-price{font-size:13px;color:var(--red);font-weight:700;margin-top:3px}
.mini-cart-remove{font-size:16px;color:#ccc;cursor:pointer;flex-shrink:0;padding:2px}
.mini-cart-remove:hover{color:var(--red)}
.mini-cart-empty-msg{padding:30px;text-align:center;color:#999;font-size:13px}
.mini-cart-ft{padding:12px 14px;display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #f0f0f0}

/* ── NAV ───────────────────────────────────────────────────── */
.main-nav{background:var(--blue-dark);border-top:1px solid rgba(255,255,255,.1)}
.nav-inner{display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none}
.nav-inner::-webkit-scrollbar{display:none}
.nav-item{position:relative}
.nav-link{display:flex;align-items:center;gap:5px;padding:10px 14px;color:#fff;font-size:13px;font-weight:500;white-space:nowrap;transition:.15s}
.nav-link:hover,.nav-link.active{background:rgba(255,255,255,.15);color:#ffd700}
.nav-link .ni{font-size:15px}
/* Dropdown */
.nav-dropdown{position:absolute;top:100%;left:0;background:#fff;border-radius:0 0 6px 6px;box-shadow:0 8px 24px rgba(0,0,0,.15);min-width:200px;z-index:99;display:none;border-top:2px solid var(--blue)}
.nav-item:hover .nav-dropdown{display:block}
.nav-dropdown a{display:flex;align-items:center;gap:8px;padding:8px 16px;color:#333;font-size:13px;border-bottom:1px solid #f5f5f5;transition:.15s}
.nav-dropdown a:hover{background:#f0f7ff;color:var(--blue);padding-left:20px}

/* ── LAYOUT WRAP ───────────────────────────────────────────── */
.page-body{max-width:var(--container);margin:10px auto;padding:0 10px}

/* ── BANNER AREA ───────────────────────────────────────────── */
.banner-area{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:10px}
.banner-main-col{grid-column:span 2;position:relative;border-radius:6px;overflow:hidden}
.banner-slider-wrapper {
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  height: 320px;
}
.banner-slider-track {
  display: flex;
  transition: transform .5s ease;
  height: 100%;
}
.banner-slide {
  min-width: 100%;
  position: relative;
  height: 100%;
}
.banner-slide-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 40px 60px;
  border-radius: 10px;
  box-sizing: border-box;
}
.banner-slide-info {
  color: #fff;
  max-width: 55%;
  text-align: left;
}
.banner-slide-title {
  font-size: 36px;
  font-weight: 900;
  line-height: 1.2;
  margin-bottom: 12px;
  text-shadow: 0 2px 10px rgba(0,0,0,0.2);
}
.banner-slide-sub {
  font-size: 16px;
  opacity: 0.9;
  margin-bottom: 24px;
}
.banner-slide-btn {
  font-size: 16px;
  padding: 14px 32px;
  border: none;
  cursor: pointer;
  box-sizing: border-box;
}
.banner-slide-emoji {
  font-size: 100px;
  opacity: 0.85;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,0.2));
  user-select: none;
}
.banner-slide-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 6px;
  display: block;
}
.banner-dots {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 5px;
  z-index: 10;
}
.banner-dot {
  width: 6px;
  height: 6px;
  border-radius: 3px;
  background: rgba(255,255,255,.5);
  cursor: pointer;
  transition: .3s;
}
.banner-dot.active {
  width: 18px;
  background: #fff;
}
.banner-prev,.banner-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.85);width:30px;height:60px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#555;cursor:pointer;z-index:5;transition:.2s;border:none}
.banner-prev{left:0;border-radius:0 4px 4px 0}
.banner-next{right:0;border-radius:4px 0 0 4px}
.banner-prev:hover,.banner-next:hover{background:#fff}
.banner-side-col{display:flex;flex-direction:column;gap:8px}
.banner-side-item{border-radius:6px;overflow:hidden;flex:1;cursor:pointer;transition:transform .2s}
.banner-side-item:hover{transform:translateY(-2px)}
.banner-side-inner {
  height: 100%;
  min-height: 154px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  border-radius: 10px;
  box-sizing: border-box;
}
.banner-side-info {
  text-align: left;
}
.banner-side-title {
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 6px;
}
.banner-side-sub {
  font-size: 12px;
  color: #666;
}
.banner-side-btn {
  margin-top: 12px;
  color: #fff;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 700;
  display: inline-block;
}
.banner-side-icon {
  font-size: 60px;
}

/* ── QUICK CATEGORIES (like DMX row icons) ─────────────────── */
.quick-cats{background:#fff;border:2px solid #0d5b35;border-radius:16px;padding:18px 14px;margin-bottom:12px;box-shadow:var(--shadow)}
.quick-cats-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px 6px}
.quick-cat-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 2px;cursor:pointer;border-radius:8px;transition:.2s;position:relative}
.quick-cat-item:hover{background:#f4fbf7}
.quick-cat-item:hover .quick-cat-name{color:#0d5b35}
.quick-cat-img-container{position:relative;width:55px;height:55px;display:flex;align-items:center;justify-content:center}
.quick-cat-img{width:48px;height:48px;object-fit:contain;transition:transform .2s}
.quick-cat-item:hover .quick-cat-img{transform:scale(1.08)}
.quick-cat-svg-wrap{width:45px;height:45px;border-radius:50%;background:#e8f4fd;display:flex;align-items:center;justify-content:center}
.quick-cat-badge{position:absolute;top:-4px;right:-14px;background:#e83b3b;color:#fff;font-size:8.5px;font-weight:700;padding:2px 6px;border-radius:8px;line-height:1;box-shadow:0 2px 5px rgba(232,59,59,.3);z-index:2;white-space:nowrap}
.quick-cat-name{font-size:12px;color:#2f2f2f;text-align:center;line-height:1.3;font-weight:600;word-break:keep-all}

/* ── SECTION WRAPPER ───────────────────────────────────────── */
.section-wrap{background:#fff;border-radius:6px;margin-bottom:10px;overflow:hidden;box-shadow:var(--shadow)}
.section-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 0}
.section-title-box{display:flex;align-items:center;gap:8px}
.section-title{font-size:18px;font-weight:800;color:#333}
.section-title-icon{font-size:22px}
.section-more-link{font-size:13px;color:var(--blue);font-weight:600;display:flex;align-items:center;gap:3px;padding:4px 10px;border:1px solid var(--blue);border-radius:20px;transition:.2s}
.section-more-link:hover{background:var(--blue);color:#fff}

/* Brand Tabs */
.brand-tabs{display:flex;gap:6px;padding:10px 14px 0;flex-wrap:wrap}
.brand-tab{padding:5px 14px;border-radius:20px;border:1px solid var(--border);font-size:12px;font-weight:500;color:#555;cursor:pointer;transition:.2s;background:#fff}
.brand-tab:hover{border-color:var(--blue);color:var(--blue)}
.brand-tab.active{border-color:var(--blue);background:var(--blue);color:#fff}

/* Product grid inside section */
.section-products{padding:12px 14px}
.products-row{display:grid;gap:8px}
.products-row.cols-6{grid-template-columns:repeat(6,1fr)}
.products-row.cols-5{grid-template-columns:repeat(5,1fr)}
.products-row.cols-4{grid-template-columns:repeat(4,1fr)}

/* ── PRODUCT CARD (DMX style) ──────────────────────────────── */
.product-card{background:#fff;border:1px solid #f0f0f0;border-radius:6px;overflow:hidden;cursor:pointer;transition:.2s;position:relative;display:flex;flex-direction:column}
.product-card:hover{border-color:#c8dff7;box-shadow:0 4px 16px rgba(26,115,232,.12);transform:translateY(-2px)}
.pc-img-wrap{position:relative;padding-top:100%;background:#fff;overflow:hidden}
.pc-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:8px;transition:.3s}
.product-card:hover .pc-img{transform:scale(1.04)}
.pc-badges{position:absolute;top:6px;left:6px;display:flex;flex-direction:column;gap:3px}
.badge{display:inline-block;padding:2px 7px;border-radius:3px;font-size:11px;font-weight:700;line-height:1.5}
.badge-red{background:var(--red);color:#fff}
.badge-blue{background:var(--blue);color:#fff}
.badge-green{background:var(--green);color:#fff}
.badge-orange{background:var(--orange);color:#fff}
.badge-yellow{background:#ffd700;color:#333}
.pc-wishlist{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.9);display:flex;align-items:center;justify-content:center;font-size:16px;color:#ccc;transition:.2s}
.pc-wishlist:hover,.pc-wishlist.active{color:var(--red)}
.pc-body{padding:8px 10px;flex:1;display:flex;flex-direction:column;gap:4px}
.pc-brand{font-size:10px;color:#999;text-transform:uppercase;letter-spacing:.5px;font-weight:600}
.pc-name{font-size:13px;font-weight:500;color:#333;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;flex:1}
.pc-price-box{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.pc-price{font-size:16px;font-weight:700;color:var(--red)}
.pc-compare{font-size:11px;color:#aaa;text-decoration:line-through}
.pc-rating{display:flex;align-items:center;gap:4px;font-size:11px;color:#999}
.pc-stars{color:#ffc107;font-size:11px;letter-spacing:-1px}
.pc-gift{font-size:11px;color:var(--green);background:#f2fcf5;padding:3px 6px;border-radius:3px;margin-top:2px;display:flex;align-items:center;gap:4px}
.pc-footer{padding:0 10px 10px}
.pc-add-cart{width:100%;padding:7px;background:var(--blue);color:#fff;border-radius:4px;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:5px;transition:.2s}
.pc-add-cart:hover{background:var(--blue-dark)}

/* ── FLASH SALE (DMX-style: red header, dark bg) ─────────── */
.flash-section{background:#c60004;border-radius:6px;margin-bottom:10px;overflow:hidden;box-shadow:var(--shadow)}
.flash-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#c60004}
.flash-title-area{display:flex;align-items:center;gap:10px}
.flash-sale-badge{background:#fff;color:var(--red);font-size:15px;font-weight:900;padding:4px 14px;border-radius:4px;letter-spacing:.5px;display:flex;align-items:center;gap:6px}
.flash-sale-badge::before{content:'⚡';font-size:18px}
.flash-end-text{color:rgba(255,255,255,.9);font-size:12px;margin-left:4px}
.countdown-box{display:flex;align-items:center;gap:4px}
.cd-unit{background:rgba(0,0,0,.4);color:#fff;min-width:36px;text-align:center;border-radius:4px;padding:3px 6px}
.cd-num{font-size:20px;font-weight:800;line-height:1;display:block}
.cd-label{font-size:9px;color:rgba(255,255,255,.6)}
.cd-sep{color:#fff;font-size:18px;font-weight:700}
.flash-view-all{color:#fff;font-size:12px;border:1px solid rgba(255,255,255,.5);border-radius:20px;padding:4px 12px;display:flex;align-items:center;gap:4px;transition:.2s;cursor:pointer}
.flash-view-all:hover{background:rgba(255,255,255,.2)}
.flash-products-scroll{display:flex;gap:6px;overflow-x:auto;padding:8px 14px 12px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent;background:linear-gradient(180deg,#a30003 0%,#8a0002 100%)}
.flash-products-scroll::-webkit-scrollbar{height:3px}
.flash-products-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:2px}
/* Flash card */
.flash-card{min-width:160px;max-width:160px;background:#fff;border-radius:6px;overflow:hidden;cursor:pointer;transition:.2s}
.flash-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.2)}
.fc-img-wrap{position:relative;padding-top:100%;background:#fff}
.fc-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:8px}
.fc-disc-badge{position:absolute;top:6px;left:6px;background:var(--red);color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:3px}
.fc-body{padding:8px;background:#fff}
.fc-name{font-size:12px;font-weight:500;color:#333;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;margin-bottom:6px}
.fc-price{font-size:15px;font-weight:800;color:var(--red)}
.fc-compare{font-size:11px;color:#aaa;text-decoration:line-through}
.fc-progress{margin-top:6px}
.fc-prog-bar{width:100%;height:4px;background:#f0f0f0;border-radius:2px;overflow:hidden}
.fc-prog-fill{height:100%;background:linear-gradient(90deg,var(--orange),var(--red));border-radius:2px}
.fc-sold-txt{font-size:10px;color:#999;margin-top:3px}

/* ── PROMO BANNERS ─────────────────────────────────────────── */
.promo-row{display:grid;gap:8px;margin-bottom:10px}
.promo-row.cols-3{grid-template-columns:repeat(3,1fr)}
.promo-row.cols-2{grid-template-columns:repeat(2,1fr)}
.promo-card{border-radius:6px;overflow:hidden;cursor:pointer}
.promo-card img{width:100%;height:90px;object-fit:cover;transition:.3s}
.promo-card:hover img{transform:scale(1.03)}

/* ── BENEFITS BAR ──────────────────────────────────────────── */
.benefits-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:#fff;border-radius:6px;margin-bottom:10px;box-shadow:var(--shadow);overflow:hidden}
.benefit-item{display:flex;align-items:center;gap:10px;padding:14px 16px;border-right:1px solid #f0f0f0;cursor:pointer;transition:.15s}
.benefit-item:last-child{border-right:none}
.benefit-item:hover{background:#f8f9ff}
.benefit-icon{font-size:28px;flex-shrink:0}
.benefit-text-wrap{}
.benefit-title{font-size:13px;font-weight:700;color:#333}
.benefit-sub{font-size:11px;color:#888;margin-top:2px}

/* ── CATEGORY PAGE ─────────────────────────────────────────── */
.cat-page-layout{display:grid;grid-template-columns:220px 1fr;gap:10px;margin-top:10px}
.filter-sidebar{background:#fff;border-radius:6px;box-shadow:var(--shadow);height:fit-content;position:sticky;top:68px}
.filter-sidebar-head{padding:12px 14px;font-weight:700;font-size:14px;color:#fff;background:var(--blue);border-radius:6px 6px 0 0;display:flex;align-items:center;gap:6px}
.filter-group{border-bottom:1px solid #f5f5f5;padding:12px 14px}
.filter-group-title{font-size:13px;font-weight:700;color:#333;margin-bottom:9px;display:flex;justify-content:space-between;cursor:pointer;user-select:none}
.filter-group-title::after{content:'▾';color:#999;transition:.2s}
.filter-group.collapsed .filter-group-title::after{transform:rotate(-90deg)}
.filter-group.collapsed .filter-group-body{display:none}
.filter-label{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer;font-size:13px;color:#555;transition:.15s}
.filter-label:hover{color:var(--blue)}
.filter-label input{accent-color:var(--blue);width:14px;height:14px}
.price-range-wrap{padding:4px 0 8px}
.price-range-input{width:100%;accent-color:var(--blue);margin-bottom:6px}
.price-range-labels{display:flex;justify-content:space-between;font-size:12px;color:#888}
.price-quick-btns{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.pq-btn{padding:4px 10px;font-size:11px;border:1px solid var(--border);border-radius:14px;background:#fff;cursor:pointer;color:#555;transition:.2s}
.pq-btn:hover,.pq-btn.active{border-color:var(--blue);background:var(--blue);color:#fff}
.filter-reset-btn{display:flex;align-items:center;justify-content:center;gap:5px;padding:10px 14px;color:var(--blue);font-size:13px;font-weight:500;cursor:pointer;transition:.15s}
.filter-reset-btn:hover{background:#f0f7ff}

/* Products area */
.products-area{}
.sort-bar{background:#fff;border-radius:6px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;box-shadow:var(--shadow)}
.result-count{font-size:13px;color:#666}
.sort-right{display:flex;align-items:center;gap:8px}
.sort-label{font-size:13px;color:#666}
.sort-select{padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px;background:#fff;cursor:pointer;color:#333}
.sort-select:focus{border-color:var(--blue)}
.view-btns{display:flex;gap:4px}
.view-btn{padding:5px 8px;border:1px solid var(--border);border-radius:4px;font-size:14px;background:#fff;cursor:pointer;transition:.15s}
.view-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.active-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.filter-tag{display:inline-flex;align-items:center;gap:6px;background:#e8f0fe;color:var(--blue);border:1px solid #c5d9f7;border-radius:16px;padding:3px 10px;font-size:12px}
.filter-tag button{color:var(--blue);font-size:14px;cursor:pointer;line-height:1}
.cat-products-grid{display:grid;gap:8px}
.cat-products-grid.view-grid{grid-template-columns:repeat(4,1fr)}
.cat-products-grid.view-list{grid-template-columns:1fr}

/* List card */
.list-card{background:#fff;border:1px solid #f0f0f0;border-radius:6px;display:flex;gap:14px;padding:14px;cursor:pointer;transition:.2s}
.list-card:hover{border-color:#c5d9f7;box-shadow:0 4px 12px rgba(26,115,232,.1)}
.lc-img{width:110px;height:110px;object-fit:contain;border-radius:4px;background:#fafafa;padding:6px;flex-shrink:0}
.lc-info{flex:1;min-width:0}
.lc-brand{font-size:10px;color:#999;text-transform:uppercase;font-weight:600;letter-spacing:.5px}
.lc-name{font-size:15px;font-weight:600;color:#333;margin:4px 0 8px;line-height:1.4}
.lc-price-box{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.lc-price{font-size:20px;font-weight:800;color:var(--red)}
.lc-compare{font-size:13px;color:#aaa;text-decoration:line-through}
.lc-rating{font-size:12px;color:#888;margin-top:5px}
.lc-actions{display:flex;flex-direction:column;gap:6px;justify-content:center;flex-shrink:0}
.btn-buy-now{background:var(--orange);color:#fff;padding:10px 18px;border-radius:4px;font-size:13px;font-weight:700;text-align:center;transition:.2s;display:block}
.btn-buy-now:hover{background:#e06e0d}
.btn-add-to-cart{background:#fff;color:var(--blue);border:1.5px solid var(--blue);padding:9px 18px;border-radius:4px;font-size:13px;font-weight:700;text-align:center;transition:.2s;display:block}
.btn-add-to-cart:hover{background:var(--blue);color:#fff}

/* Pagination */
.pagination{display:flex;align-items:center;justify-content:center;gap:5px;margin:16px 0}
.page-btn{width:34px;height:34px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;border:1px solid var(--border);color:#333;cursor:pointer;background:#fff;transition:.15s}
.page-btn:hover,.page-btn.active{border-color:var(--blue);background:var(--blue);color:#fff}
.page-btn:disabled{opacity:.4;pointer-events:none}

/* ── PRODUCT DETAIL (DMX style) ────────────────────────────── */
.breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:#888;padding:10px 0;flex-wrap:wrap}
.breadcrumb a{color:#888;transition:.15s}
.breadcrumb a:hover{color:var(--blue)}
.bc-sep{color:#ccc}
.bc-current{color:#333;font-weight:500}

.product-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:10px}
/* Left col images */
.pd-images{}
.pd-main-img-box{border:1px solid #f0f0f0;border-radius:6px;background:#fff;padding:16px;display:flex;align-items:center;justify-content:center;aspect-ratio:1;margin-bottom:8px;position:relative;overflow:hidden;cursor:zoom-in}
.pd-main-img{max-width:100%;max-height:100%;object-fit:contain;transition:.3s}
.pd-main-img:hover{transform:scale(1.06)}
.pd-thumbs{display:flex;gap:6px;flex-wrap:wrap}
.pd-thumb{width:68px;height:68px;border:1.5px solid #f0f0f0;border-radius:4px;padding:4px;cursor:pointer;transition:.15s;background:#fff;object-fit:contain}
.pd-thumb:hover,.pd-thumb.active{border-color:var(--blue)}
.pd-img-arrows{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;padding:0 6px;pointer-events:none}
.pd-img-arrow{pointer-events:all;background:rgba(255,255,255,.8);color:#555;width:28px;height:48px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:.2s}
.pd-img-arrow:hover{background:#fff}

/* Right col info */
.pd-info{}
.pd-badges-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.pd-name{font-size:20px;font-weight:700;color:#333;line-height:1.4;margin-bottom:8px}
.pd-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:#888;margin-bottom:12px;flex-wrap:wrap}
.pd-meta .stars{color:#ffc107;font-size:14px}
.pd-meta strong{color:#333}

/* Price box */
.pd-price-box{background:#fff7f7;border:1px solid #fde0e0;border-radius:6px;padding:14px;margin-bottom:12px}
.pd-price-current{font-size:30px;font-weight:900;color:var(--red)}
.pd-price-original{font-size:15px;color:#aaa;text-decoration:line-through;margin-left:8px}
.pd-price-disc{background:var(--red);color:#fff;font-size:13px;font-weight:700;padding:2px 8px;border-radius:3px;margin-left:6px}
.pd-installment-note{font-size:12px;color:#666;margin-top:7px}
.pd-installment-note strong{color:var(--blue)}
.pd-price-tag{font-size:11px;color:var(--red);font-weight:600;margin-top:5px;display:flex;align-items:center;gap:4px}

/* Promo box */
.pd-promo-box{background:#fffde7;border:1px solid #ffe082;border-radius:6px;padding:12px 14px;margin-bottom:12px}
.pd-promo-title{font-size:13px;font-weight:700;color:#333;margin-bottom:8px;display:flex;align-items:center;gap:5px}
.pd-promo-list{display:flex;flex-direction:column;gap:6px}
.pd-promo-item{font-size:13px;color:#444;display:flex;align-items:flex-start;gap:8px;line-height:1.4}
.pd-promo-item::before{content:'🎁';flex-shrink:0;font-size:13px}

/* CTA */
.pd-cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.btn-mua-ngay{background:var(--orange);color:#fff;padding:14px;border-radius:6px;font-size:15px;font-weight:800;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px;transition:.2s;cursor:pointer}
.btn-mua-ngay:hover{background:#e06e0d;transform:translateY(-1px)}
.btn-mua-ngay small{font-size:11px;font-weight:400;opacity:.9}
.btn-tra-gop{background:#fff;color:var(--blue);border:2px solid var(--blue);padding:14px;border-radius:6px;font-size:13px;font-weight:700;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px;transition:.2s;cursor:pointer}
.btn-tra-gop:hover{background:var(--blue);color:#fff}
.btn-tra-gop small{font-size:11px;font-weight:400}
.btn-them-gio{width:100%;padding:12px;background:var(--blue);color:#fff;border-radius:6px;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:10px;transition:.2s}
.btn-them-gio:hover{background:var(--blue-dark)}

/* Installment calc */
.pd-calc{background:#f0f7ff;border:1px solid #c5d9f7;border-radius:6px;padding:14px;margin-bottom:10px}
.pd-calc-title{font-size:13px;font-weight:700;color:var(--blue);margin-bottom:10px;display:flex;align-items:center;gap:5px}
.pd-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.pd-calc-label{font-size:11px;color:#888;margin-bottom:4px}
.pd-calc-select{width:100%;padding:7px 10px;border:1.5px solid var(--border);border-radius:4px;font-size:13px;background:#fff}
.pd-calc-result{background:#fff;border-radius:6px;padding:12px;text-align:center;border:1px solid #c5d9f7}
.pd-calc-monthly{font-size:24px;font-weight:900;color:var(--red)}
.pd-calc-note{font-size:11px;color:#888;margin-top:4px}

/* Delivery info */
.pd-delivery{background:#f9f9f9;border-radius:6px;padding:12px 14px;font-size:13px}
.pd-delivery-title{font-weight:700;margin-bottom:8px;color:#333}
.pd-delivery-list{display:flex;flex-direction:column;gap:6px;color:#555}
.pd-delivery-item{display:flex;align-items:flex-start;gap:6px}

/* Product description and specs grid */
.product-desc-specs-grid{display:grid;grid-template-columns:1fr 340px;gap:15px;align-items:start}
@media(max-width:900px){
  .product-desc-specs-grid{grid-template-columns:1fr}
}

/* Specs table */
.specs-box{background:#fff;border-radius:6px;box-shadow:var(--shadow);margin-bottom:10px;overflow:hidden}
.specs-box-head{padding:14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f5f5f5}
.specs-table{width:100%;border-collapse:collapse}
.specs-table tr:nth-child(even) td{background:#f9f9f9}
.specs-table td{padding:9px 14px;border-bottom:1px solid #f0f0f0;font-size:13px}
.specs-table td:first-child{color:#888;width:42%;font-weight:500}
.specs-table td:last-child{color:#333;font-weight:500}

/* Reviews */
.reviews-box{background:#fff;border-radius:6px;box-shadow:var(--shadow);margin-bottom:10px;padding:16px}
.rating-overview{display:flex;gap:24px;align-items:center;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f5f5f5}
.rating-big-num{font-size:52px;font-weight:900;color:#ffc107;line-height:1}
.rating-big-stars{font-size:22px;color:#ffc107;margin:4px 0}
.rating-big-count{font-size:12px;color:#888}
.rating-bars{flex:1;display:flex;flex-direction:column;gap:5px}
.rb-row{display:flex;align-items:center;gap:8px;font-size:12px}
.rb-label{width:28px;color:#888;text-align:right;flex-shrink:0}
.rb-bar-bg{flex:1;height:7px;background:#f0f0f0;border-radius:4px;overflow:hidden}
.rb-bar-fill{height:100%;background:#ffc107;border-radius:4px}
.rb-pct{width:32px;color:#888;flex-shrink:0}
.review-form-box{background:#f9f9f9;border-radius:6px;padding:14px;margin-bottom:16px}
.review-form-title{font-size:14px;font-weight:700;margin-bottom:10px}
.star-input{display:flex;gap:5px;margin-bottom:10px}
.star-input button{font-size:26px;color:#ddd;cursor:pointer;transition:.15s;line-height:1}
.review-input{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:5px;font-size:13px;resize:none;margin-bottom:8px;color:#333}
.review-input:focus{border-color:var(--blue)}
.review-submit{background:var(--blue);color:#fff;padding:9px 20px;border-radius:5px;font-size:13px;font-weight:600;transition:.2s}
.review-submit:hover{background:var(--blue-dark)}
.review-card{border-bottom:1px solid #f5f5f5;padding:14px 0}
.rc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.rc-name{font-weight:600;font-size:14px}
.rc-date{font-size:11px;color:#aaa}
.rc-text{font-size:13px;color:#555;line-height:1.6}
.rc-verified{font-size:11px;color:var(--green);margin-top:5px;display:flex;align-items:center;gap:4px}

/* ── CART PAGE ─────────────────────────────────────────────── */
.cart-layout{display:grid;grid-template-columns:1fr 340px;gap:12px;margin-top:10px;margin-bottom:30px}
.cart-box,.cart-summary-box{background:#fff;border-radius:6px;box-shadow:var(--shadow)}
.cart-box-head{padding:14px 16px;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:15px}
.cart-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid #f8f8f8}
.cart-item-img{width:76px;height:76px;object-fit:contain;border-radius:4px;background:#fafafa;padding:4px;flex-shrink:0}
.cart-item-info{flex:1;min-width:0}
.cart-item-name{font-size:14px;font-weight:500;color:#333;margin-bottom:4px;cursor:pointer}
.cart-item-name:hover{color:var(--blue)}
.cart-item-price{font-size:15px;font-weight:700;color:var(--red)}
.qty-box{display:flex;align-items:center;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.qty-dec,.qty-inc{width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:16px;background:#f8f8f8;cursor:pointer;transition:.15s}
.qty-dec:hover,.qty-inc:hover{background:var(--blue);color:#fff}
.qty-val{width:38px;text-align:center;font-size:14px;font-weight:600;border-left:1px solid var(--border);border-right:1px solid var(--border);height:30px;display:flex;align-items:center;justify-content:center}
.cart-item-total{font-weight:700;font-size:15px;color:var(--red);min-width:90px;text-align:right;flex-shrink:0}
.cart-remove{font-size:18px;color:#ccc;cursor:pointer;padding:4px;transition:.15s}
.cart-remove:hover{color:var(--red)}
.cart-summary-box{padding:16px;height:fit-content;position:sticky;top:70px}
.cs-title{font-size:15px;font-weight:700;margin-bottom:14px}
.cs-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:7px 0;border-bottom:1px solid #f8f8f8}
.cs-total{display:flex;justify-content:space-between;font-weight:800;font-size:17px;color:var(--red);padding:12px 0 0;margin-top:4px}
.voucher-row{display:flex;gap:6px;margin:10px 0}
.voucher-input{flex:1;padding:8px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px}
.voucher-input:focus{border-color:var(--blue)}
.voucher-apply{padding:8px 14px;background:var(--blue);color:#fff;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:.15s}
.voucher-apply:hover{background:var(--blue-dark)}

/* ── CHECKOUT ──────────────────────────────────────────────── */
.checkout-layout{display:grid;grid-template-columns:1fr 360px;gap:14px;margin-top:10px;margin-bottom:40px}
.checkout-section{background:#fff;border-radius:6px;box-shadow:var(--shadow);padding:18px;margin-bottom:12px}
.co-section-title{font-size:15px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:6px;color:#333}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-full{grid-column:1/-1}
.form-group-item{}
.form-label{font-size:12px;color:#666;display:block;margin-bottom:5px;font-weight:500}
.form-input{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:5px;font-size:14px;color:#333;transition:.15s}
.form-input:focus{border-color:var(--blue)}
.form-select{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:5px;font-size:14px;background:#fff;color:#333}
.form-textarea{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:5px;font-size:14px;resize:vertical;min-height:70px}
.payment-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px solid var(--border);border-radius:6px;cursor:pointer;margin-bottom:8px;transition:.15s}
.payment-option.selected{border-color:var(--blue);background:#f0f7ff}
.payment-option-icon{font-size:22px;flex-shrink:0}
.payment-option-info{}
.payment-option-name{font-size:14px;font-weight:600;color:#333}
.payment-option-sub{font-size:12px;color:#888;margin-top:2px}
.order-summary-box{background:#fff;border-radius:6px;box-shadow:var(--shadow);padding:16px;position:sticky;top:70px}
.os-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #f8f8f8;align-items:flex-start}
.os-img{width:50px;height:50px;object-fit:contain;background:#f8f8f8;border-radius:4px;padding:3px;flex-shrink:0}
.os-info{flex:1;min-width:0}
.os-name{font-size:12px;font-weight:500;color:#333;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.os-price{font-size:13px;color:var(--red);font-weight:700;margin-top:4px}
.os-qty{font-size:11px;color:#888;margin-top:2px}
.btn-place-order{width:100%;padding:14px;background:var(--orange);color:#fff;border-radius:6px;font-size:16px;font-weight:800;transition:.2s;margin-top:14px}
.btn-place-order:hover{background:#e06e0d}

/* ── FOOTER ────────────────────────────────────────────────── */
.site-footer{background:#1a2940;color:rgba(255,255,255,.8);margin-top:20px}
.footer-inner{padding:32px 0;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}
.footer-brand{}
.footer-logo-text{color:#fff;font-size:20px;font-weight:900;margin-bottom:10px}
.footer-desc{font-size:13px;line-height:1.8;color:rgba(255,255,255,.6);margin-bottom:12px}
.footer-hotline-box{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.footer-hotline-num{font-size:18px;font-weight:700;color:#ffd700}
.footer-socials{display:flex;gap:8px}
.social-icon{width:34px;height:34px;border-radius:6px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;color:#fff;transition:.2s;cursor:pointer}
.social-icon svg{display:block}
.social-icon.facebook:hover{background:#1877f2}
.social-icon.zalo:hover{background:#0068ff}
.social-icon.youtube:hover{background:#ff0000}
.social-icon.tiktok:hover{background:#010101}
.footer-col-title{color:#fff;font-weight:700;font-size:13px;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}
.footer-links{display:flex;flex-direction:column;gap:8px}
.footer-links a{font-size:13px;color:rgba(255,255,255,.6);transition:.15s}
.footer-links a:hover{color:#fff;padding-left:4px}
.footer-bottom{padding:14px 0;border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:12px;color:rgba(255,255,255,.4)}
.payment-icons{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.pay-icon{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.8);padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600}

/* ── TOAST ─────────────────────────────────────────────────── */
.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:6px}
.toast{background:#333;color:#fff;padding:11px 18px;border-radius:6px;font-size:14px;box-shadow:0 4px 16px rgba(0,0,0,.2);display:flex;align-items:center;gap:8px;max-width:300px;animation:toast-in .25s ease}
.toast.success{background:#10984b}
.toast.error{background:var(--red)}
.toast.warning{background:#f59e0b;color:#333}
.toast.info{background:var(--blue)}
@keyframes toast-in{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes toast-out{to{transform:translateX(100%);opacity:0}}
.toast.removing{animation:toast-out .25s ease forwards}

/* ── MODAL ─────────────────────────────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:.2s;backdrop-filter:blur(2px)}
.modal-overlay.show{opacity:1;visibility:visible}
.modal-box{background:#fff;border-radius:8px;box-shadow:0 16px 50px rgba(0,0,0,.25);max-width:90vw;max-height:90vh;overflow-y:auto;transform:scale(.9);transition:.2s;padding:22px}
.modal-overlay.show .modal-box{transform:scale(1)}
.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.modal-title{font-size:16px;font-weight:700}
.modal-close{font-size:22px;cursor:pointer;color:#aaa;transition:.15s;line-height:1}
.modal-close:hover{color:var(--red)}

/* ── BACK TO TOP ───────────────────────────────────────────── */
.back-to-top{position:fixed;bottom:70px;right:15px;z-index:999;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 12px rgba(26,115,232,.4);transition:.2s;opacity:0;visibility:hidden;cursor:pointer}
.back-to-top.show{opacity:1;visibility:visible}
.back-to-top:hover{transform:translateY(-3px)}

/* ── SKELETON LOADER ───────────────────────────────────────── */
.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200%;animation:shimmer 1.4s infinite}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}

/* ── SCROLLBAR ─────────────────────────────────────────────── */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:#f4f4f4}
::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#aaa}

/* ── RESPONSIVE ────────────────────────────────────────────── */
@media(max-width:1100px){
  .products-row.cols-6{grid-template-columns:repeat(5,1fr)}
  .quick-cats-grid{grid-template-columns:repeat(8,1fr)}
  .footer-inner{grid-template-columns:1fr 1fr;gap:24px}
}
@media(max-width:900px){
  .banner-area{grid-template-columns:1fr}
  .banner-main-col{grid-column:1}
  .banner-side-col{flex-direction:row}
  .cat-page-layout{grid-template-columns:1fr}
  .filter-sidebar{position:static;width:100%}
  .product-layout{grid-template-columns:1fr}
  .cart-layout,.checkout-layout{grid-template-columns:1fr}
  .products-row.cols-6,.products-row.cols-5{grid-template-columns:repeat(4,1fr)}
  .products-row.cols-4{grid-template-columns:repeat(3,1fr)}
  .benefits-bar{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
  .header-main{flex-wrap:wrap;gap:8px}
  .header-search{order:3;max-width:100%;width:100%}
  .header-hotline{display:none}
  .header-location{display:none}
  .quick-cats-grid{grid-template-columns:repeat(4,1fr)}
  .products-row.cols-4,.products-row.cols-5,.products-row.cols-6{grid-template-columns:repeat(2,1fr)}
  .cat-products-grid.view-grid{grid-template-columns:repeat(2,1fr)}
  .pd-cta-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .promo-row.cols-2,.promo-row.cols-3{grid-template-columns:1fr}
  .benefits-bar{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .banner-slider-wrapper {
    height: 200px;
  }
  .banner-slide-inner {
    padding: 15px 25px;
  }
  .banner-slide-info {
    max-width: 70%;
  }
  .banner-slide-title {
    font-size: 20px;
    margin-bottom: 6px;
  }
  .banner-slide-sub {
    font-size: 12px;
    margin-bottom: 12px;
  }
  .banner-slide-btn {
    font-size: 12px;
    padding: 8px 18px;
  }
  .banner-slide-emoji {
    font-size: 55px;
  }
  .banner-side-inner {
    min-height: 120px;
    padding: 12px 16px;
  }
  .banner-side-title {
    font-size: 14px;
    margin-bottom: 4px;
  }
  .banner-side-sub {
    font-size: 11px;
  }
  .banner-side-btn {
    margin-top: 8px;
    padding: 4px 10px;
    font-size: 10px;
  }
  .banner-side-icon {
    font-size: 40px;
  }
}
@media(max-width:480px){
  .banner-slider-wrapper {
    height: 160px;
  }
  .banner-slide-inner {
    padding: 10px 15px;
  }
  .banner-slide-info {
    max-width: 75%;
  }
  .banner-slide-title {
    font-size: 16px;
    margin-bottom: 4px;
  }
  .banner-slide-sub {
    font-size: 11px;
    margin-bottom: 8px;
  }
  .banner-slide-btn {
    font-size: 11px;
    padding: 6px 12px;
  }
  .banner-slide-emoji {
    font-size: 45px;
  }
  .banner-side-inner {
    min-height: 90px;
    padding: 8px 12px;
  }
  .banner-side-title {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .banner-side-sub {
    display: none;
  }
  .banner-side-btn {
    margin-top: 6px;
    padding: 3px 8px;
    font-size: 9px;
  }
  .banner-side-icon {
    font-size: 32px;
  }
}


/* ─────────────────────────────────────────────
   DMHP: Kinh nghiệm mua sắm & Khuyến mãi pages
────────────────────────────────────────────── */
.dmhp-knowledge-page{background:#f5f7fb;padding:14px 0 28px;color:#111827}
.dmhp-knowledge-container{width:100%;max-width:1180px;margin:0 auto;padding:0 12px;box-sizing:border-box}
.dmhp-knowledge-top{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;margin-bottom:14px}
.dmhp-section-title{font-size:17px;font-weight:800;color:#1267c4;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.dmhp-featured-article{display:grid;grid-template-columns:1.1fr 1fr;gap:12px;text-decoration:none;color:inherit;align-items:stretch}
.dmhp-featured-article img{width:100%;height:230px;object-fit:cover;border-radius:5px;background:#e5e7eb}
.dmhp-featured-content h1{font-size:17px;line-height:1.25;margin:0 0 8px;font-weight:800;color:#111827}
.dmhp-featured-content span,.dmhp-small-article span,.dmhp-article-card span{font-size:12px;color:#1267c4;background:#eef6ff;padding:3px 8px;border-radius:3px;display:inline-block;margin-bottom:8px}
.dmhp-featured-content p{font-size:13px;color:#4b5563;line-height:1.55;margin:0}
.dmhp-km-side-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.dmhp-small-article{text-decoration:none;color:#111827;display:block}
.dmhp-small-article img{width:100%;height:94px;object-fit:cover;border-radius:4px;background:#e5e7eb;margin-bottom:6px}
.dmhp-small-article strong{font-size:13px;line-height:1.35;display:block;font-weight:800;margin-bottom:5px;color:#111827}
.dmhp-knowledge-mid{display:grid;grid-template-columns:1.75fr .8fr;gap:14px;margin-bottom:16px}
.dmhp-video-box{background:#080808;color:#fff;border-radius:6px;padding:14px}
.dmhp-video-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px}
.dmhp-video-head a{color:#4da3ff;font-size:12px;text-decoration:none}
.dmhp-video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.dmhp-video-card b{font-size:13px;line-height:1.35;color:#fff;display:block;margin-top:8px}
.dmhp-video-thumb{height:145px;border-radius:5px;background:linear-gradient(135deg,rgba(0,0,0,.15),rgba(0,0,0,.75)),url('assets/images/banner-hoang-phuc.jpg') center/cover;display:flex;align-items:center;justify-content:center}
.dmhp-video-thumb.second{background:linear-gradient(135deg,rgba(0,0,0,.15),rgba(0,0,0,.75)),url('assets/images/banner1.jpg') center/cover}
.dmhp-video-thumb span{width:54px;height:54px;border:2px solid #fff;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);font-size:22px;color:#fff}
.dmhp-most-read{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:14px}
.dmhp-most-read h3{font-size:16px;margin:0 0 10px;color:#1267c4;font-weight:800}
.dmhp-most-read a{display:grid;grid-template-columns:36px 1fr;gap:8px;text-decoration:none;color:#111827;font-size:12px;line-height:1.35;border-bottom:1px solid #edf2f7;padding:8px 0}
.dmhp-most-read a:last-child{border-bottom:none}
.dmhp-most-read span{font-size:20px;color:#2b73d2;font-weight:800;line-height:1}
.dmhp-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dmhp-article-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;text-decoration:none;color:#111827;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.dmhp-article-card img{width:100%;height:150px;object-fit:cover;background:#e5e7eb;display:block}
.dmhp-article-card h3{font-size:14px;line-height:1.35;font-weight:800;margin:10px 12px 7px;color:#111827}
.dmhp-article-card span{margin:0 12px 8px}
.dmhp-article-card p{font-size:12px;color:#4b5563;line-height:1.45;margin:0 12px 13px}
.dmhp-sale-page{background:#f5f7fb;padding:18px 0 32px}
.dmhp-sale-hero{background:linear-gradient(135deg,#c90000,#f5222d);color:#fff;border-radius:12px;padding:28px 32px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 6px 18px rgba(201,0,0,.18)}
.dmhp-sale-hero span{font-weight:700;font-size:13px;background:rgba(255,255,255,.16);padding:5px 10px;border-radius:999px;display:inline-block;margin-bottom:10px}
.dmhp-sale-hero h1{font-size:32px;margin:0 0 8px;font-weight:900;color:#fff}
.dmhp-sale-hero p{font-size:14px;line-height:1.55;margin:0;max-width:650px;color:rgba(255,255,255,.92)}
.dmhp-sale-btn{background:#fff;color:#c90000;text-decoration:none;font-weight:800;padding:12px 18px;border-radius:999px;white-space:nowrap}
.dmhp-sale-grid{margin-top:10px}
.dmhp-empty-sale{background:#fff;border-radius:10px;padding:36px;text-align:center;border:1px solid #e5e7eb}
.dmhp-empty-sale h2{margin-top:0;font-size:22px}
.dmhp-empty-sale a{background:#0063C6;color:#fff;padding:10px 16px;border-radius:999px;text-decoration:none;font-weight:700;display:inline-block;margin-top:10px}
@media(max-width:992px){
  .dmhp-knowledge-top,.dmhp-knowledge-mid{grid-template-columns:1fr}
  .dmhp-featured-article{grid-template-columns:1fr}
  .dmhp-featured-article img{height:220px}
}
@media(max-width:768px){
  .dmhp-km-side-grid,.dmhp-video-grid,.dmhp-article-grid{grid-template-columns:1fr}
  .dmhp-sale-hero{flex-direction:column;align-items:flex-start;padding:22px}
  .dmhp-sale-hero h1{font-size:26px}
}

/* Hoang Phuc full horizontal logo */
.header-logo-full img{height:42px!important;max-width:230px!important;}
.footer-logo-text img{height:42px!important;max-width:230px!important;}
@media (max-width:768px){.header-logo-full img{height:34px!important;max-width:190px!important}.footer-logo-text img{height:34px!important;max-width:190px!important}}


/* ===== DMHP Deal / Khuyến mãi page v1.4 ===== */
.dmhp-deal-page{background:#f4f6f8;padding:10px 0 34px}
.dmhp-deal-hero{margin:0 auto 10px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.08)}
.dmhp-deal-banner-link{display:block;text-decoration:none;line-height:0}
.dmhp-deal-banner-img{width:100%;height:auto;display:block;object-fit:cover}
.dmhp-deal-banner-fallback{min-height:260px;background:linear-gradient(135deg,#ffd600 0%,#ff7900 50%,#e60012 100%);display:flex;align-items:center;padding:34px;border:4px solid #fff;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.18)}
.dmhp-deal-banner-fallback span{display:inline-block;background:#d70000;color:#fff;font-size:14px;font-weight:900;border-radius:999px;padding:6px 14px;margin-bottom:12px}
.dmhp-deal-banner-fallback h1{font-size:54px;line-height:1;margin:0 0 12px;font-weight:1000;color:#fff;text-transform:uppercase}
.dmhp-deal-banner-fallback p{font-size:18px;font-weight:700;margin:0;color:#fff}
.dmhp-deal-trust-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 14px}
.dmhp-deal-trust-row div{background:#fff;border:1px solid #f1d08a;color:#9a2b00;font-weight:800;font-size:13px;border-radius:8px;text-align:center;padding:10px 8px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
.dmhp-deal-section{background:#fff;border:3px solid #ffb000;border-radius:10px;margin-bottom:18px;padding:10px;box-shadow:0 4px 16px rgba(255,160,0,.12)}
.dmhp-deal-section-head{background:linear-gradient(180deg,#fff3a7 0%,#ffcf00 35%,#ff6b00 100%);border:2px solid #fff;border-radius:10px;margin-bottom:10px;display:flex;align-items:center;justify-content:center;gap:18px;min-height:68px;position:relative;overflow:hidden}
.dmhp-deal-section-head:before,.dmhp-deal-section-head:after{content:'⚡';position:absolute;font-size:34px;color:#fff;opacity:.35;top:14px}.dmhp-deal-section-head:before{left:22px}.dmhp-deal-section-head:after{right:22px}
.dmhp-deal-section-head h2{margin:0;color:#d40000;font-size:28px;font-weight:1000;text-transform:uppercase;font-style:italic;text-shadow:2px 2px 0 #fff,0 2px 6px rgba(0,0,0,.12)}
.dmhp-deal-section-head span{background:#d40000;color:#fff;font-weight:1000;border-radius:999px;padding:8px 13px;font-size:17px;box-shadow:0 2px 0 rgba(0,0,0,.15)}
.dmhp-deal-grid.products-row{gap:8px}.dmhp-deal-grid .product-card{border-color:#ffe1a1}.dmhp-deal-grid .product-card:hover{border-color:#ff9f00;box-shadow:0 6px 18px rgba(255,140,0,.18)}
.dmhp-empty-sale{background:#fff8e7;border:1px dashed #ffa500;border-radius:8px;text-align:center;padding:24px;color:#7a3d00}.dmhp-empty-sale h3,.dmhp-empty-sale h2{margin:0 0 8px;color:#c60000}
@media(max-width:900px){.dmhp-deal-trust-row{grid-template-columns:repeat(2,1fr)}.dmhp-deal-section-head h2{font-size:22px}.dmhp-deal-section-head span{font-size:14px}.dmhp-deal-banner-fallback h1{font-size:38px}}
@media(max-width:520px){.dmhp-deal-page{padding:6px 0 24px}.dmhp-deal-trust-row{grid-template-columns:1fr 1fr;gap:6px}.dmhp-deal-trust-row div{font-size:11px;padding:8px 4px}.dmhp-deal-section{padding:6px;border-width:2px}.dmhp-deal-section-head{min-height:56px;gap:8px}.dmhp-deal-section-head h2{font-size:18px}.dmhp-deal-section-head span{font-size:12px;padding:6px 9px}.dmhp-deal-banner-fallback{min-height:210px;padding:22px}.dmhp-deal-banner-fallback h1{font-size:30px}.dmhp-deal-banner-fallback p{font-size:14px}}

/* v1.5 - Banner phu co the dung anh upload */
.banner-side-img{width:100%;height:100%;min-height:102px;object-fit:cover;display:block;border-radius:6px}
.banner-side-item.has-image .banner-side-inner{padding:0;background:transparent!important;min-height:102px}
.header-logo-full img{height:46px!important;max-width:280px!important}
.footer-logo-text img{height:48px!important;max-width:285px!important}
@media (max-width:768px){.header-logo-full img{height:38px!important;max-width:210px!important}.footer-logo-text img{height:42px!important;max-width:245px!important}}

/* ── DMHP SINGLE PRODUCT v1.6 OPTIMIZED ───────────────────── */
.dmhp-single-page{background:#f5f7fb}.dmhp-breadcrumb-wrap{margin-bottom:12px}.dmhp-product-hero{display:grid;grid-template-columns:minmax(0,48%) minmax(420px,52%);gap:18px;align-items:start}.dmhp-gallery-card,.dmhp-buy-card,.dmhp-product-tabs-wrap{background:#fff;border:1px solid #e9edf5;border-radius:12px;box-shadow:0 6px 18px rgba(15,23,42,.06)}.dmhp-gallery-card{padding:16px;position:relative}.dmhp-product-labels{position:absolute;left:16px;top:16px;z-index:2;display:flex;gap:6px;flex-wrap:wrap}.dmhp-product-labels span{background:#eaf7ee;color:#16833a;border:1px solid #cbead5;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.dmhp-main-image{height:520px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:10px;position:relative;overflow:hidden}.dmhp-main-image img{max-width:94%;max-height:94%;object-fit:contain;transition:.25s}.dmhp-main-image:hover img{transform:scale(1.035)}.dmhp-img-nav{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:54px;border:none;border-radius:8px;background:rgba(255,255,255,.9);box-shadow:0 3px 12px rgba(0,0,0,.12);font-size:26px;color:#1f2937;cursor:pointer}.dmhp-prev{left:10px}.dmhp-next{right:10px}.dmhp-thumbs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;padding-bottom:4px}.dmhp-thumb{width:74px;height:74px;border:2px solid #edf1f7;border-radius:8px;background:#fff;padding:5px;flex:0 0 auto;cursor:pointer}.dmhp-thumb.active,.dmhp-thumb:hover{border-color:#0b74de}.dmhp-thumb img{width:100%;height:100%;object-fit:contain}.dmhp-buy-card{padding:18px}.dmhp-badges-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.dmhp-badge{border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.dmhp-badge.blue{background:#eaf3ff;color:#0b63c7}.dmhp-badge.gray{background:#f3f4f6;color:#4b5563}.dmhp-badge.green{background:#ecfdf5;color:#159447}.dmhp-badge.red{background:#fef2f2;color:#dc2626}.dmhp-product-title{font-size:25px;line-height:1.35;color:#111827;font-weight:900;margin:0 0 10px}.dmhp-product-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#6b7280;font-size:13px;margin-bottom:14px}.dmhp-stars{color:#f5a400;letter-spacing:1px}.dmhp-stars.big{font-size:22px}.dmhp-dot{width:4px;height:4px;border-radius:50%;background:#d1d5db}.dmhp-price-panel{background:linear-gradient(135deg,#fff1f1,#fff8ed);border:1px solid #ffd8d8;border-radius:12px;padding:15px;margin-bottom:12px}.dmhp-price-label{font-size:12px;color:#b91c1c;font-weight:900;text-transform:uppercase;margin-bottom:4px}.dmhp-price-line{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.dmhp-current-price{font-size:34px;font-weight:1000;color:#e60012;line-height:1}.dmhp-old-price{color:#9ca3af;text-decoration:line-through;font-size:16px}.dmhp-discount{background:#e60012;color:#fff;border-radius:6px;padding:4px 8px;font-size:13px;font-weight:900}.dmhp-price-sub{font-size:13px;color:#4b5563;margin-top:8px}.dmhp-price-sub strong{color:#0b74de}.dmhp-promo-panel{border:1px dashed #f59e0b;background:#fffaf0;border-radius:12px;padding:13px;margin-bottom:12px}.dmhp-panel-title{font-weight:900;color:#8a3f00;margin-bottom:8px}.dmhp-promo-panel ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.dmhp-promo-panel li{font-size:13px;color:#374151;display:flex;gap:8px}.dmhp-promo-panel li:before{content:'✓';width:18px;height:18px;border-radius:50%;background:#16a34a;color:#fff;font-size:11px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:1px}.dmhp-cta-block{display:grid;grid-template-columns:1.2fr .8fr;gap:10px;margin-bottom:12px}.dmhp-btn{border:0;border-radius:10px;padding:13px 16px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transition:.18s}.dmhp-btn strong{font-size:16px}.dmhp-btn span{font-size:12px}.dmhp-btn-primary{background:linear-gradient(180deg,#ff8a00,#f05a00);color:#fff;box-shadow:0 5px 14px rgba(240,90,0,.25)}.dmhp-btn-primary:hover{transform:translateY(-1px);filter:brightness(.98)}.dmhp-btn-outline{background:#fff;color:#0b74de;border:2px solid #0b74de;font-weight:900}.dmhp-btn-outline:hover{background:#eaf3ff}.dmhp-hotline-box{display:flex;align-items:center;justify-content:space-between;background:#0f2f55;color:#fff;border-radius:12px;padding:12px 14px;margin-bottom:12px}.dmhp-hotline-box span{display:block;font-size:12px;opacity:.82}.dmhp-hotline-box strong{font-size:22px;color:#ffd44a}.dmhp-hotline-box a{background:#fff;color:#0f2f55;border-radius:999px;padding:8px 14px;font-weight:900;text-decoration:none}.dmhp-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.dmhp-trust-grid div{border:1px solid #edf1f7;background:#f8fafc;border-radius:10px;padding:10px;text-align:center}.dmhp-trust-grid span{display:block;font-size:19px;margin-bottom:3px}.dmhp-trust-grid b{display:block;font-size:12px;color:#111827}.dmhp-trust-grid small{display:block;font-size:10px;color:#6b7280;margin-top:2px}.dmhp-installment{border:1px solid #cfe0f8;background:#f5f9ff;border-radius:10px;padding:10px}.dmhp-installment summary{font-weight:900;color:#0b63c7;cursor:pointer}.dmhp-installment .pd-calc-grid{margin-top:12px}.dmhp-product-tabs-wrap{margin-top:18px;padding:0;overflow:hidden}.dmhp-tabs{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid #eef2f7;background:#fbfcff}.dmhp-tabs button{padding:14px 18px;background:transparent;border:0;border-right:1px solid #eef2f7;font-weight:900;color:#4b5563;cursor:pointer;white-space:nowrap}.dmhp-tabs button.active{color:#e60012;background:#fff;border-top:3px solid #e60012}.dmhp-tab-layout{display:grid;grid-template-columns:1fr 300px;gap:18px;padding:18px}.dmhp-tab-panel{display:none}.dmhp-tab-panel.active{display:block}.dmhp-tab-panel h2{font-size:20px;margin:0 0 14px;color:#111827}.dmhp-desc-content{font-size:15px;line-height:1.8;color:#374151}.dmhp-desc-content img{max-width:100%;height:auto;border-radius:8px}.dmhp-spec-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #eef2f7;border-radius:10px;overflow:hidden}.dmhp-spec-table td{padding:12px 14px;border-bottom:1px solid #eef2f7;font-size:14px}.dmhp-spec-table td:first-child{width:35%;background:#f8fafc;color:#6b7280;font-weight:800}.dmhp-spec-table td:last-child{color:#111827;font-weight:700}.dmhp-policy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.dmhp-policy-grid div{border:1px solid #eef2f7;border-radius:12px;background:#fbfcff;padding:14px}.dmhp-policy-grid strong{display:block;color:#111827;margin-bottom:6px}.dmhp-policy-grid span{font-size:14px;color:#4b5563;line-height:1.55}.dmhp-review-summary{display:flex;gap:18px;align-items:center;background:#fffaf0;border:1px solid #ffe6b0;border-radius:12px;padding:16px;margin-bottom:16px}.dmhp-review-score{font-size:48px;font-weight:1000;color:#f5a400;line-height:1}.dmhp-sticky-side{position:sticky;top:86px;display:flex;flex-direction:column;gap:12px}.dmhp-side-box{background:linear-gradient(135deg,#0d63bd,#0b79e5);color:#fff;border-radius:12px;padding:16px}.dmhp-side-box.soft{background:#f8fafc;color:#111827;border:1px solid #eef2f7}.dmhp-side-box h3{font-size:16px;margin:0 0 8px}.dmhp-side-box p{font-size:13px;line-height:1.55;margin:0 0 12px;opacity:.92}.dmhp-side-box a{display:inline-block;background:#fff;color:#0d63bd;border-radius:999px;padding:8px 12px;font-weight:900;text-decoration:none}.dmhp-side-box ul{margin:0;padding-left:18px;font-size:13px;line-height:1.9}.dmhp-mobile-buybar{display:none}.dmhp-related .section-head{border-radius:10px 10px 0 0}
@media(max-width:1100px){.dmhp-product-hero{grid-template-columns:1fr}.dmhp-main-image{height:460px}.dmhp-tab-layout{grid-template-columns:1fr}.dmhp-sticky-side{position:static;display:grid;grid-template-columns:1fr 1fr}.dmhp-trust-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.dmhp-single-page{padding-bottom:74px}.dmhp-product-hero{gap:12px}.dmhp-gallery-card,.dmhp-buy-card{border-radius:10px;padding:12px}.dmhp-main-image{height:330px}.dmhp-product-title{font-size:19px}.dmhp-current-price{font-size:27px}.dmhp-cta-block{grid-template-columns:1fr}.dmhp-trust-grid{grid-template-columns:repeat(2,1fr)}.dmhp-tabs button{font-size:13px;padding:12px 14px}.dmhp-tab-layout{padding:14px}.dmhp-policy-grid{grid-template-columns:1fr}.dmhp-sticky-side{grid-template-columns:1fr}.dmhp-mobile-buybar{display:grid;grid-template-columns:1fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid #e5e7eb;z-index:9999;padding:9px 12px;box-shadow:0 -4px 16px rgba(15,23,42,.12)}.dmhp-mobile-buybar a,.dmhp-mobile-buybar button{display:flex;align-items:center;justify-content:center;border-radius:9px;padding:12px 10px;font-weight:900;text-decoration:none;border:0}.dmhp-mobile-buybar a{background:#0b74de;color:#fff}.dmhp-mobile-buybar button,.dmhp-mobile-buybar .primary{background:#f97316;color:#fff}.dmhp-thumbs{gap:6px}.dmhp-thumb{width:58px;height:58px}.dmhp-hotline-box strong{font-size:18px}}


/* v1.6.1 cache/layout fix - force single product layout */
body.single-product .dmhp-product-hero{display:grid!important;grid-template-columns:minmax(0,48%) minmax(420px,52%)!important;gap:18px!important;align-items:start!important;margin:0 0 18px!important;}
body.single-product .dmhp-gallery-card,body.single-product .dmhp-buy-card,body.single-product .dmhp-product-tabs-wrap{background:#fff!important;border:1px solid #e9edf5!important;border-radius:12px!important;box-shadow:0 6px 18px rgba(15,23,42,.06)!important;}
body.single-product .dmhp-gallery-card{padding:16px!important;position:relative!important;}
body.single-product .dmhp-main-image{height:520px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(180deg,#fff,#f8fbff)!important;border-radius:10px!important;position:relative!important;overflow:hidden!important;}
body.single-product .dmhp-main-image img{max-width:94%!important;max-height:94%!important;width:auto!important;height:auto!important;object-fit:contain!important;}
body.single-product .dmhp-thumbs{display:flex!important;gap:8px!important;margin-top:12px!important;overflow-x:auto!important;padding-bottom:4px!important;}
body.single-product .dmhp-thumb{width:74px!important;height:74px!important;border:2px solid #edf1f7!important;border-radius:8px!important;background:#fff!important;padding:5px!important;flex:0 0 auto!important;cursor:pointer!important;overflow:hidden!important;}
body.single-product .dmhp-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;}
body.single-product .dmhp-buy-card{padding:18px!important;}
body.single-product .dmhp-product-title{font-size:25px!important;line-height:1.35!important;color:#111827!important;font-weight:900!important;margin:0 0 10px!important;}
body.single-product .dmhp-current-price{font-size:34px!important;font-weight:900!important;color:#e60012!important;line-height:1!important;}
body.single-product .dmhp-product-tabs-wrap{margin-top:18px!important;overflow:hidden!important;}
body.single-product .dmhp-tabs{display:flex!important;overflow-x:auto!important;border-bottom:1px solid #eef2f7!important;background:#fbfcff!important;}
body.single-product .dmhp-tab-layout{display:grid!important;grid-template-columns:1fr 300px!important;gap:18px!important;padding:18px!important;}
body.single-product .dmhp-tab-panel{display:none!important;}
body.single-product .dmhp-tab-panel.active{display:block!important;}
body.single-product .dmhp-desc-content img{max-width:100%!important;height:auto!important;}
@media(max-width:1100px){body.single-product .dmhp-product-hero{grid-template-columns:1fr!important;}body.single-product .dmhp-main-image{height:460px!important;}body.single-product .dmhp-tab-layout{grid-template-columns:1fr!important;}}
@media(max-width:768px){body.single-product .dmhp-main-image{height:330px!important;}body.single-product .dmhp-product-title{font-size:19px!important;}body.single-product .dmhp-current-price{font-size:27px!important;}body.single-product .dmhp-thumb{width:58px!important;height:58px!important;}}


/* DMHP v1.7 - compact product detail + same price shelf */
.dmhp-product-hero{
  align-items:flex-start;
  gap:18px;
  margin-top:12px;
  margin-bottom:18px;
}
.dmhp-gallery-card,
.dmhp-buy-card{
  border-radius:10px;
}
.dmhp-main-image{
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.dmhp-main-image img{
  max-height:400px;
  width:auto;
  object-fit:contain;
}
.dmhp-product-title{
  font-size:24px;
  line-height:1.25;
  margin:10px 0;
}
.dmhp-price-panel{
  padding:12px 14px;
  border-radius:10px;
  background:linear-gradient(90deg,#fff4dd,#fff9ed);
  border:1px solid #ffd285;
}
.dmhp-current-price{
  font-size:30px;
}
.dmhp-promo-panel{
  margin-top:10px;
}
.dmhp-promo-panel ul{
  margin:8px 0 0;
}
.dmhp-cta-block{
  margin-top:12px;
}
.dmhp-trust-grid{
  margin-top:12px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.dmhp-trust-grid div{
  padding:10px;
}
.dmhp-quick-shelf{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:14px;
  margin:16px 0;
  box-shadow:0 4px 14px rgba(15,23,42,.05);
}
.dmhp-shelf-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.dmhp-shelf-head h2{
  font-size:18px;
  margin:0;
  color:#0f172a;
}
.dmhp-shelf-head span{
  font-size:13px;
  color:#64748b;
}
.dmhp-shelf-products{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.dmhp-shelf-products .product-card,
.dmhp-shelf-products .dlk-product-card,
.dmhp-shelf-products .product{
  min-width:0;
}
.dmhp-product-tabs-wrap{
  margin-top:16px;
}
.dmhp-tabs{
  position:sticky;
  top:0;
  z-index:5;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px 10px 0 0;
  overflow:hidden;
}
.dmhp-tab-layout{
  display:block;
}
.dmhp-tab-main{
  width:100%;
}
.dmhp-sticky-side{
  display:none;
}
.dmhp-desc-content{
  max-height:900px;
  overflow:hidden;
  position:relative;
}
.dmhp-desc-content:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:80px;
  background:linear-gradient(transparent,#fff);
  pointer-events:none;
}
.dmhp-tab-panel.active{
  padding:18px;
}
@media (max-width:1024px){
  .dmhp-shelf-products{grid-template-columns:repeat(3,minmax(0,1fr));}
  .dmhp-main-image{min-height:340px;}
}
@media (max-width:768px){
  .dmhp-product-hero{display:block;}
  .dmhp-gallery-card{margin-bottom:12px;}
  .dmhp-main-image{min-height:280px;}
  .dmhp-main-image img{max-height:260px;}
  .dmhp-product-title{font-size:20px;}
  .dmhp-current-price{font-size:26px;}
  .dmhp-shelf-head{display:block;}
  .dmhp-shelf-head span{display:block;margin-top:4px;}
  .dmhp-shelf-products{
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding-bottom:6px;
    scroll-snap-type:x mandatory;
  }
  .dmhp-shelf-products > *{
    min-width:155px;
    scroll-snap-align:start;
  }
  .dmhp-tabs{
    overflow-x:auto;
    display:flex;
  }
  .dmhp-tabs button{
    white-space:nowrap;
    min-width:max-content;
  }
}


/* DMHP v1.7.2 - FIX fatal + compact trust boxes + correct product order */
.dmhp-trust-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:10px !important;
}
.dmhp-trust-grid div{
  min-height:auto !important;
  padding:8px 6px !important;
  border-radius:8px !important;
  text-align:center !important;
  line-height:1.15 !important;
}
.dmhp-trust-grid div > span{
  display:block !important;
  font-size:16px !important;
  line-height:1 !important;
  margin-bottom:3px !important;
}
.dmhp-trust-grid b{
  display:block !important;
  font-size:12px !important;
  line-height:1.15 !important;
  margin-bottom:2px !important;
}
.dmhp-trust-grid small{
  display:block !important;
  font-size:10px !important;
  line-height:1.15 !important;
  color:#64748b !important;
}
.dmhp-related-bottom{
  margin-top:18px !important;
}
.dmhp-product-tabs-wrap{
  margin-top:16px !important;
}
.dmhp-shelf-products{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
}
.dmhp-shelf-head h2{font-size:17px !important;}
.dmhp-shelf-head span{font-size:12px !important;}
@media (max-width:1024px){
  .dmhp-trust-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
  .dmhp-shelf-products{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:768px){
  .dmhp-trust-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px !important;}
  .dmhp-trust-grid div{padding:7px 4px !important;}
  .dmhp-trust-grid div > span{font-size:14px !important;}
  .dmhp-trust-grid b{font-size:10px !important;}
  .dmhp-trust-grid small{display:none !important;}
  .dmhp-shelf-products{display:flex !important;overflow-x:auto !important;gap:10px !important;padding-bottom:6px !important;}
  .dmhp-shelf-products > *{min-width:155px !important;}
}


/* ===== DMHP v1.8 - Kinh nghiệm mua sắm polished layout ===== */
.dmhp-kg-page{
  background:#f4f7fb;
  padding:14px 0 34px;
  color:#111827;
}
.dmhp-kg-container{
  max-width:1180px;
  margin:0 auto;
  padding:0 12px;
  box-sizing:border-box;
}
.dmhp-kg-hero,
.dmhp-kg-video,
.dmhp-kg-mostread,
.dmhp-kg-latest{
  background:#fff;
  border:1px solid #e4e9f2;
  border-radius:10px;
  box-shadow:0 3px 12px rgba(15,23,42,.04);
}
.dmhp-kg-hero{
  padding:14px;
  margin-bottom:14px;
}
.dmhp-kg-titlebar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  border-bottom:1px solid #edf2f7;
  padding-bottom:10px;
  margin-bottom:14px;
}
.dmhp-kg-titlebar h1{
  margin:0;
  font-size:20px;
  font-weight:900;
  color:#0968c9;
}
.dmhp-kg-titlebar p{
  margin:0;
  font-size:13px;
  color:#64748b;
}
.dmhp-kg-topgrid{
  display:grid;
  grid-template-columns:1.18fr 1fr;
  gap:14px;
}
.dmhp-kg-featured{
  display:grid;
  grid-template-columns:1.15fr .95fr;
  gap:14px;
  text-decoration:none;
  color:inherit;
  min-height:245px;
  border-radius:9px;
  overflow:hidden;
  background:#f8fbff;
  border:1px solid #edf2f7;
}
.dmhp-kg-featured .dmhp-kg-imgwrap{
  min-height:245px;
}
.dmhp-kg-featured .dmhp-kg-imgwrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.dmhp-kg-featured .dmhp-kg-info{
  padding:16px 14px 14px 0;
  align-self:center;
}
.dmhp-kg-info span{
  display:inline-flex;
  align-items:center;
  background:#eef6ff;
  color:#0968c9;
  font-size:11px;
  font-weight:700;
  padding:4px 8px;
  border-radius:999px;
  margin-bottom:8px;
}
.dmhp-kg-info h3{
  font-size:17px;
  line-height:1.35;
  font-weight:900;
  color:#111827;
  margin:0 0 8px;
}
.dmhp-kg-info p{
  font-size:13px;
  line-height:1.5;
  color:#4b5563;
  margin:0;
}
.dmhp-kg-sidecards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dmhp-kg-small{
  display:grid;
  grid-template-columns:112px 1fr;
  gap:10px;
  text-decoration:none;
  color:inherit;
  background:#fff;
  border:1px solid #edf2f7;
  border-radius:9px;
  overflow:hidden;
  min-height:112px;
  transition:.18s ease;
}
.dmhp-kg-small:hover,
.dmhp-kg-card:hover,
.dmhp-kg-featured:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(15,23,42,.08);
}
.dmhp-kg-small .dmhp-kg-imgwrap{
  background:#eef2f7;
  min-height:112px;
}
.dmhp-kg-small img{
  width:100%;
  height:100%;
  min-height:112px;
  object-fit:cover;
  display:block;
}
.dmhp-kg-small .dmhp-kg-info{
  padding:9px 9px 9px 0;
}
.dmhp-kg-small .dmhp-kg-info h3{
  font-size:12.5px;
  margin-bottom:0;
}
.dmhp-kg-small .dmhp-kg-info p{display:none}
.dmhp-kg-small .dmhp-kg-info span{
  font-size:10px;
  padding:3px 7px;
  margin-bottom:6px;
}

.dmhp-kg-mid{
  display:grid;
  grid-template-columns:1.65fr .85fr;
  gap:14px;
  margin-bottom:14px;
}
.dmhp-kg-video{
  background:#0b1220;
  color:#fff;
  padding:14px;
}
.dmhp-kg-video .dmhp-kg-section-head{
  border-bottom:1px solid rgba(255,255,255,.12);
  padding-bottom:10px;
  margin-bottom:12px;
}
.dmhp-kg-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.dmhp-kg-section-head h2{
  font-size:17px;
  margin:0;
  font-weight:900;
  color:#0968c9;
}
.dmhp-kg-video .dmhp-kg-section-head h2{
  color:#fff;
}
.dmhp-kg-section-head a{
  font-size:12px;
  color:#0b74de;
  text-decoration:none;
  font-weight:700;
}
.dmhp-kg-video-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dmhp-kg-video-card{
  text-decoration:none;
  color:#fff;
}
.dmhp-kg-video-card b{
  display:block;
  margin-top:8px;
  font-size:13px;
  line-height:1.35;
}
.dmhp-kg-video-thumb{
  height:160px;
  border-radius:8px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
  justify-content:center;
}
.dmhp-kg-video-thumb span{
  width:54px;
  height:54px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.9);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  background:rgba(255,255,255,.18);
  color:#fff;
}
.dmhp-kg-mostread{
  padding:14px;
}
.dmhp-kg-mostread h2{
  margin:0 0 10px;
  font-size:17px;
  color:#0968c9;
  font-weight:900;
}
.dmhp-kg-mostread a{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:10px;
  align-items:center;
  text-decoration:none;
  color:#111827;
  padding:10px 0;
  border-bottom:1px solid #edf2f7;
}
.dmhp-kg-mostread a:last-child{border-bottom:none}
.dmhp-kg-mostread span{
  color:#2b73d2;
  font-size:21px;
  font-weight:900;
  line-height:1;
}
.dmhp-kg-mostread b{
  font-size:12.5px;
  line-height:1.35;
}
.dmhp-kg-latest{
  padding:14px;
}
.dmhp-kg-latest .dmhp-kg-section-head{
  margin-bottom:12px;
  padding-bottom:10px;
  border-bottom:1px solid #edf2f7;
}
.dmhp-kg-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.dmhp-kg-card{
  display:block;
  text-decoration:none;
  color:inherit;
  border:1px solid #edf2f7;
  border-radius:10px;
  overflow:hidden;
  background:#fff;
  transition:.18s ease;
}
.dmhp-kg-card .dmhp-kg-imgwrap{
  height:158px;
  background:#eef2f7;
}
.dmhp-kg-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.dmhp-kg-card .dmhp-kg-info{
  padding:12px;
}
.dmhp-kg-card .dmhp-kg-info h3{
  font-size:14px;
  min-height:38px;
}
.dmhp-kg-card .dmhp-kg-info p{
  font-size:12px;
}

@media(max-width:1100px){
  .dmhp-kg-topgrid,
  .dmhp-kg-mid{
    grid-template-columns:1fr;
  }
}
@media(max-width:768px){
  .dmhp-kg-titlebar{display:block}
  .dmhp-kg-titlebar h1{font-size:18px;margin-bottom:5px}
  .dmhp-kg-featured{
    grid-template-columns:1fr;
  }
  .dmhp-kg-featured .dmhp-kg-info{
    padding:0 12px 12px;
  }
  .dmhp-kg-sidecards,
  .dmhp-kg-video-grid,
  .dmhp-kg-grid{
    grid-template-columns:1fr;
  }
  .dmhp-kg-small{
    grid-template-columns:120px 1fr;
  }
}


/* ===== DMHP v1.9 - conversion trust and contact improvements ===== */
.dmhp-why-home{
  max-width:1180px;
  margin:12px auto 12px;
  background:#fff;
  border:1px solid #e4e9f2;
  border-radius:12px;
  padding:14px;
  box-shadow:0 4px 14px rgba(15,23,42,.05);
}
.dmhp-why-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid #edf2f7;
  margin-bottom:12px;
}
.dmhp-why-title span{
  color:#0b66c3;
  font-size:18px;
  font-weight:900;
}
.dmhp-why-title strong{
  color:#ef1725;
  font-size:13px;
}
.dmhp-why-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.dmhp-why-item{
  background:linear-gradient(180deg,#f8fbff,#fff);
  border:1px solid #e6edf7;
  border-radius:10px;
  padding:12px;
}
.dmhp-why-item b{
  display:block;
  font-size:14px;
  color:#111827;
  margin-bottom:5px;
}
.dmhp-why-item small{
  color:#64748b;
  font-size:12px;
  line-height:1.35;
}
.dmhp-contact-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:12px;
}
.dmhp-contact-actions a{
  text-decoration:none;
  border-radius:10px;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:2px;
  border:1px solid #dbe6f2;
}
.dmhp-contact-actions span{
  font-size:12px;
  opacity:.85;
}
.dmhp-contact-actions strong{
  font-size:18px;
  line-height:1.15;
}
.dmhp-contact-call{
  background:#0f172a;
  color:#fff !important;
}
.dmhp-contact-zalo{
  background:#eef7ff;
  color:#0068c9 !important;
}
.dmhp-floating-contact{
  position:fixed;
  right:16px;
  bottom:18px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.dmhp-floating-contact a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:118px;
  padding:10px 14px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  box-shadow:0 6px 18px rgba(15,23,42,.18);
}
.dmhp-float-call{
  background:#ef1725;
  color:#fff !important;
}
.dmhp-float-zalo{
  background:#0068c9;
  color:#fff !important;
}
@media(max-width:768px){
  .dmhp-why-title{display:block}
  .dmhp-why-title span{display:block;font-size:16px;margin-bottom:4px}
  .dmhp-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dmhp-why-item{padding:10px}
  .dmhp-why-item b{font-size:12px}
  .dmhp-why-item small{font-size:11px}
  .dmhp-contact-actions{grid-template-columns:1fr 1fr}
  .dmhp-contact-actions strong{font-size:14px}
  .dmhp-floating-contact{
    left:10px;
    right:10px;
    bottom:10px;
    flex-direction:row;
  }
  .dmhp-floating-contact a{
    flex:1;
    min-width:0;
    padding:10px 8px;
  }
  body{padding-bottom:58px;}
}



/* ========================================================================
   DMHP v2.0 — Cart / Checkout / Order optimization
   ===================================================================== */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce{
  max-width:1180px;
  margin:0 auto;
}

.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error{
  border:none;
  border-left:4px solid #ef1725;
  border-radius:12px;
  background:#fff6f6;
  color:#7f1d1d;
  box-shadow:0 4px 14px rgba(15,23,42,.05);
}

.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table,
.woocommerce-checkout-review-order,
.woocommerce-checkout #payment,
.woocommerce-checkout .col2-set,
.woocommerce-cart .cart-collaterals .cart_totals{
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  overflow:hidden;
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td,
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td{
  border-color:#eef2f7 !important;
}

.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th{
  background:#f8fbff;
  font-weight:800;
  color:#0f172a;
}

.woocommerce-cart .product-thumbnail img{
  width:72px !important;
  border-radius:10px;
  border:1px solid #e5e7eb;
}

.woocommerce-cart .product-name a,
.woocommerce-checkout .product-name{
  font-weight:700;
  color:#111827;
}

.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal,
.woocommerce-checkout .order-total .amount,
.woocommerce-checkout .cart-subtotal .amount,
.woocommerce-checkout .product-total .amount{
  color:#ef1725;
  font-weight:800;
}

.woocommerce-cart .coupon input.input-text{
  min-width:220px;
  border:1px solid #d7deea;
  border-radius:10px;
  padding:10px 12px;
}
.woocommerce-cart .coupon button,
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-checkout #place_order{
  border:none !important;
  border-radius:10px !important;
  background:linear-gradient(180deg,#ff9f1a,#f97316) !important;
  color:#fff !important;
  font-weight:800 !important;
  min-height:46px;
  box-shadow:0 8px 18px rgba(249,115,22,.22);
}
.woocommerce-cart .coupon button:hover,
.woocommerce-cart button[name="update_cart"]:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-checkout #place_order:hover{
  filter:brightness(.98);
}

.dmhp-checkout-topbar{
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  padding:16px;
  margin:0 0 16px;
}
.dmhp-checkout-topbar__title{
  font-size:18px;
  font-weight:900;
  color:#111827;
  margin-bottom:12px;
}
.dmhp-shipping-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dmhp-shipping-tab{
  border:1.5px solid #d7deea;
  background:#fff;
  border-radius:12px;
  min-height:74px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  gap:12px;
  text-align:left;
  cursor:pointer;
  transition:.2s ease;
}
.dmhp-shipping-tab .tab-icon{
  width:38px;
  height:38px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f1f7ff;
  font-size:18px;
}
.dmhp-shipping-tab .tab-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.dmhp-shipping-tab .tab-copy b{
  color:#0f172a;
  font-size:15px;
  line-height:1.2;
}
.dmhp-shipping-tab .tab-copy small{
  color:#64748b;
  font-size:12px;
  line-height:1.3;
}
.dmhp-shipping-tab.is-active{
  border-color:#0b66c3;
  background:#eef7ff;
  box-shadow:0 0 0 3px rgba(11,102,195,.08);
}
.dmhp-shipping-note{
  margin-top:12px;
  padding:11px 12px;
  border-radius:10px;
  background:#fff8e6;
  color:#8a4b08;
  font-size:13px;
  line-height:1.5;
}

.woocommerce-checkout .col2-set{
  padding:18px;
  margin-bottom:16px;
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{
  float:none;
  width:100%;
}
.woocommerce-checkout .col2-set .col-2{
  margin-top:16px;
}

.dmhp-checkout-section-title{
  font-size:18px;
  font-weight:900;
  color:#111827;
  margin:4px 0 14px;
}

.woocommerce-checkout form .form-row label{
  font-weight:700;
  color:#334155;
  margin-bottom:6px;
}
.woocommerce-checkout form .input-text,
.woocommerce-checkout form select,
.woocommerce-checkout form textarea{
  border:1px solid #d7deea;
  border-radius:10px;
  min-height:44px;
  padding:10px 12px;
  background:#fff;
}
.woocommerce-checkout form textarea{
  min-height:96px;
}

.dmhp-extra-request-box{
  margin-top:12px;
  padding:16px;
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
}
.dmhp-extra-request-box .woocommerce-input-wrapper{
  width:100%;
}
.dmhp-check-field label.checkbox{
  display:flex !important;
  align-items:center;
  gap:10px;
  font-weight:700;
}
.dmhp-other-request-row{
  display:none;
}

.woocommerce-checkout #order_review_heading{
  display:none;
}
.woocommerce-checkout #order_review{
  padding:18px;
}
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table{
  border:none;
  box-shadow:none;
}
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody td,
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot td,
.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tfoot th{
  padding:12px 0;
}

.woocommerce-checkout ul#shipping_method{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:8px 0 0;
  padding:0;
}
.woocommerce-checkout ul#shipping_method li{
  list-style:none;
  margin:0;
  padding:10px 12px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#fff;
}
.woocommerce-checkout ul#shipping_method li label{
  font-weight:700;
  color:#0f172a;
}

.woocommerce-checkout #payment{
  margin-top:16px;
  padding:18px;
}
.woocommerce-checkout #payment ul.payment_methods{
  border:none !important;
  padding:0 !important;
}
.woocommerce-checkout #payment ul.payment_methods li{
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:10px 12px !important;
  margin-bottom:10px;
}
.woocommerce-checkout #payment div.payment_box{
  background:#f8fbff !important;
  color:#334155 !important;
  border-radius:10px !important;
}
.woocommerce-checkout #payment div.payment_box::before{
  display:none !important;
}
.woocommerce-checkout .place-order{
  padding-top:8px !important;
}

.woocommerce-order .woocommerce-order-overview,
.woocommerce-order .woocommerce-table{
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
  padding:18px;
}
.woocommerce-order .woocommerce-order-overview{
  list-style:none;
}
.woocommerce-order .woocommerce-order-overview li{
  margin-bottom:10px;
}

@media (max-width: 991px){
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce{
    padding:0 10px;
  }
  .woocommerce-checkout .woocommerce-checkout-review-order-table thead{
    display:none;
  }
}

@media (max-width: 767px){
  .dmhp-shipping-tabs,
  .woocommerce-checkout ul#shipping_method{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .dmhp-shipping-tab{
    min-height:66px;
    padding:10px;
    gap:8px;
  }
  .dmhp-shipping-tab .tab-copy b{
    font-size:13px;
  }
  .dmhp-shipping-tab .tab-copy small{
    font-size:11px;
  }
  .woocommerce-cart table.shop_table_responsive tr td::before{
    font-weight:800;
    color:#334155;
  }
  .woocommerce-cart .coupon{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:10px;
  }
  .woocommerce-cart .coupon input.input-text,
  .woocommerce-cart .coupon button,
  .woocommerce-cart button[name="update_cart"]{
    width:100%;
    margin:0 !important;
  }
  .woocommerce-checkout #payment,
  .woocommerce-checkout #order_review,
  .woocommerce-checkout .col2-set,
  .dmhp-extra-request-box,
  .dmhp-checkout-topbar{
    padding:14px;
  }
}
