/*
Theme Name: Drinklog Phase 1 SVG Logo
Theme URI: https://drinklog.co
Author: Drinklog
Description: Logo-only full-screen homepage using inline SVG brand logo. Normal access to all other WordPress/WooCommerce pages.
Version: 3.3.1
Text Domain: drinklog-minimal-pages-fixed
*/

*{box-sizing:border-box}

html,body{margin:0;padding:0}

body{font-family:sans-serif;background:#fffaf0;color:#101010}/* font-family overridden by dl-font-override in wp_footer */

/* Fullscreen homepage only */
body.dl-home-only{
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#FFE600!important;
}

.drinklog-home{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  min-height:100vh;
  background:#FFE600;
  display:flex;
  align-items:center;
  justify-content:center;
}

.drinklog-home img{
  width:min(720px,70vw);
  max-width:80vw;
  height:auto;
  display:block;
}

/* Other pages */
.dl-header{
  background:#FFE600;
  border-bottom:1px solid rgba(0,0,0,.08);
  position:relative;
}

.dl-brand{
  display:inline-flex;
  align-items:center;
  text-decoration:none;
}

.dl-menu{display:flex;gap:24px}

.dl-actions{display:flex;gap:10px}

/* ── ช่องค้นหาใน header (สไตล์ A) ── */
.dl-header-search{
  flex:1;
  display:flex;
  align-items:center;
  gap:8px;
  background:#fff;
  border-radius:999px;
  padding:0 16px;
  height:42px;
  min-width:0;
  max-width:420px;
  border:1px solid rgba(0,0,0,.06);
}
.dl-header-search i{font-size:17px;color:#9ca3af;flex-shrink:0}
.dl-header-search input[type="search"]{
  border:none;
  outline:none;
  background:none;
  flex:1;
  min-width:0;
  font-size:13.5px;
  color:#101010;
  font-family:inherit;
}
.dl-header-search input[type="search"]::placeholder{color:#9ca3af}
.dl-header-search input[type="search"]::-webkit-search-cancel-button{cursor:pointer}
/* ซ่อนช่องค้นหามือถือบน desktop */
.dl-header-search-mobile{display:none}

.dl-pill.dark{background:#101010;color:#fff}

.dl-content{
  max-width:1200px;
  margin:0 auto;
  padding:64px 28px;
}

.dl-card{
  background:#fff;
  border-radius:24px;
  padding:36px;
  border:1px solid rgba(0,0,0,.08);
}

.dl-card h1{margin-top:0;font-size:42px;letter-spacing:-.05em}

.dl-footer{
  background:#FFE600;
  text-align:center;
  padding:42px 24px;
}

/* Basic WooCommerce support */
.woocommerce .products{
  max-width:1360px;
  margin-left:auto!important;
  margin-right:auto!important;
}

.woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:22px;
  padding:0 28px!important;
}

.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}

.woocommerce ul.products li.product{
  width:auto!important;
  float:none!important;
  margin:0!important;
  background:#fff;
  border-radius:22px;
  padding:18px!important;
  border:1px solid rgba(0,0,0,.08);
}
@media(max-width:900px){
  .dl-menu{display:none}
  .dl-brand-svg{width:90px}
  .dl-nav{padding:0 16px}
  .dl-pill{min-height:40px;padding:0 14px;font-size:13px}
  .drinklog-home img{width:min(520px,82vw)}
  /* ซ่อนช่องค้นหา desktop, ใช้ช่องค้นหาในเมนูยุบแทน */
  .dl-header > .dl-nav > .dl-header-search{display:none}
  .dl-header-search-mobile{
    display:flex !important;
    flex:none;
    width:100%;
    max-width:none;
    margin:8px 0 4px;
    height:46px;
    border:1px solid rgba(0,0,0,.12);
  }
}

/* =========================================================
   DRINKLOG MARKETPLACE VISUAL REPAIR
   ========================================================= */

body{
  background:#fffaf0 !important;
  color:#101010;
  /* font-family overridden by dl-font-override in wp_footer */
}

.dl-nav{
  max-width:1360px;
  margin:0 auto;
  min-height:76px;
  padding:0 28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.dl-brand{
  display:inline-flex !important;
  align-items:center !important;
  text-decoration:none !important;
}

.dl-brand-svg{
  width:120px !important;
  height:auto !important;
  display:block !important;
  fill:#E8620A !important;
}

.dl-menu a{
  color:#101010 !important;
  text-decoration:none !important;
  font-weight:650 !important;
  font-size:15px !important;
}

.dl-pill{
  border-radius:999px !important;
  min-height:44px !important;
  padding:0 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  background:#fff !important;
  color:#101010 !important;
  text-decoration:none !important;
  font-weight:650 !important;
}

.dl-pill.dark{
  background:#101010 !important;
  color:#fff !important;
}

/* Marketplace page */
.dl-market-page{
  background:radial-gradient(circle at 50% 0%, #fff 0%, #fffaf0 62%) !important;
  min-height:100vh;
  padding:54px 0 80px;
}

.dl-market-container{
  max-width:1360px;
  margin:0 auto;
  padding:0 32px;
}

.dl-market-hero{
  margin-bottom:30px;
}

.dl-market-hero h1{
  margin:0 0 10px !important;
  font-size:64px !important;
  line-height:.92 !important;
  letter-spacing:-.065em !important;
  font-weight:720 !important;
  color:#101010 !important;
}

.dl-market-hero p{
  max-width:720px;
  color:#606875;
  margin:0;
  font-size:17px;
  line-height:1.55;
}

/* Woo grid force */
.woocommerce .dl-market-page ul.products,
.dl-market-page ul.products{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;
  gap:24px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  clear:none !important;
}

.woocommerce .dl-market-page ul.products:before,
.woocommerce .dl-market-page ul.products:after,
.dl-market-page ul.products:before,
.dl-market-page ul.products:after{
  display:none !important;
}

.woocommerce .dl-market-page ul.products li.product,
.dl-market-page ul.products li.product,
.dl-card-product{
  width:auto !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Product cards */
.dl-card-product{
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:22px !important;
  overflow:hidden !important;
  box-shadow:0 14px 34px rgba(0,0,0,.055) !important;
  position:relative !important;
}

.dl-card-media{
  display:block !important;
  position:relative !important;
  height:220px !important;
  background:#fff !important;
  padding:56px 18px 14px !important;
  text-decoration:none !important;
}

.dl-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  margin:0 auto !important;
  display:block !important;
}

.dl-card-badges{
  position:absolute;
  top:14px;
  left:14px;
  right:14px;
  display:flex;
  justify-content:space-between;
  z-index:2;
}

.dl-badge-store{
  min-height:28px;
  display:inline-flex;
  align-self:flex-start;
  align-items:center;
  border-radius:999px;
  background:#fff0b4;
  color:#E8620A;
  padding:0 12px;
  font-size:12px;
  font-weight:700;
}

.dl-badge-sale{
  width:54px;
  height:54px;
  border-radius:50%;
  background:#99a100;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:800;
}

.dl-card-info{
  padding:0 18px 18px !important;
}

.dl-card-title{
  min-height:48px;
  display:block;
  color:#101010 !important;
  text-decoration:none !important;
  font-size:16px !important;
  line-height:1.22 !important;
  font-weight:700 !important;
  letter-spacing:-.025em !important;
}

.dl-card-price{
  margin:10px 0 12px;
  color:#E8620A !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

.dl-card-price del{
  color:#9b9b9b !important;
  font-size:14px !important;
  opacity:.65;
  margin-right:4px;
}

.dl-card-price ins{
  text-decoration:none !important;
}

.dl-card-meta{
  min-height:40px;
  border-radius:13px;
  background:#fff9ea;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 13px;
  color:#333;
  font-size:12px;
  font-weight:600;
}

.dl-card-private{
  min-height:40px;
  border-radius:13px;
  background:#fff9ea;
  display:flex;
  align-items:center;
  padding:0 13px;
  color:#666;
  font-size:12px;
  font-weight:600;
  margin-top:12px;
}

.dl-logo-placeholder{
  width:100%;
  height:100%;
  min-height:140px;
  border-radius:16px;
  background:#FFE600;
  border:1px dashed rgba(232,98,10,.25);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.dl-logo-placeholder img{
  max-width:145px !important;
  height:auto !important;
  object-fit:contain !important;
}

.dl-price-lock{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 12px;
  border-radius:12px;
  background:#fff9ea;
  color:#E8620A;
  font-size:13px;
  font-weight:700;
}

.dl-market-pagination{
  margin-top:42px;
  display:flex;
  justify-content:center;
}

/* ── Pagination ── */
.woocommerce-pagination,
.woocommerce nav.woocommerce-pagination{
  display:flex;
  justify-content:center;
  margin-top:42px;
}

.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul{
  display:inline-flex;
  align-items:center;
  gap:6px;
  list-style:none;
  margin:0;
  padding:0;
  border:none !important;
}

.woocommerce-pagination ul li,
.woocommerce nav.woocommerce-pagination ul li{
  margin:0;
  padding:0;
  border:none !important;
}

.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 6px;
  border-radius:999px;
  font-size:14px;
  font-weight:600;
  color:#101010 !important;
  background:transparent;
  border:1.5px solid transparent !important;
  text-decoration:none !important;
  transition:all .15s ease;
  line-height:1;
}

.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  background:#fff0b4 !important;
  border-color:#f5d200 !important;
  color:#101010 !important;
}

.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:#101010 !important;
  color:#fff !important;
  border-color:#101010 !important;
}

.woocommerce-pagination ul li .next,
.woocommerce-pagination ul li .prev,
.woocommerce nav.woocommerce-pagination ul li .next,
.woocommerce nav.woocommerce-pagination ul li .prev{
  font-size:16px;
  color:#101010 !important;
}

/* Single product */
.dl-single-product{
  max-width:1280px;
  margin:40px auto;
  padding:0;
}

.dl-single-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:28px;
  align-items:start;
}

.dl-single-media{
  background:#fff;
  border-radius:9px;
  padding:0;
  border:1px solid rgba(0,0,0,.1);
  overflow:hidden;
}

/* ── Custom gallery ── */
.dl-gallery{display:flex;flex-direction:column;gap:12px;width:100%;padding:14px}

/* Main image area */
.dl-gal-main{
  width:100%;
  background:#f6f6f6;
  border-radius:0;
  aspect-ratio:4/5;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.dl-gal-active-img{
  max-height:100%;
  max-width:90%;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
  cursor:zoom-in;
  transition:opacity .18s ease;
  user-select:none;
}



/* Thumbnails */
.dl-gal-thumbs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0;
}

.dl-gal-thumbs::-webkit-scrollbar{display:none}

.dl-gal-thumb{
  flex-shrink:0;
  width:60px;
  height:60px;
  border-radius:10px;
  overflow:hidden;
  border:2px solid rgba(0,0,0,.08);
  cursor:pointer;
  transition:border-color .15s, box-shadow .15s;
  background:#f6f6f6;
}

.dl-gal-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.dl-gal-thumb.on{
  border-color:#E8620A;
  box-shadow:0 0 0 2px rgba(232,98,10,.15);
}

.dl-gal-thumb:hover{border-color:rgba(232,98,10,.5)}

.dl-single-summary{
  background:#fff;
  border-radius:9px;
  padding:28px 32px;
  border:1px solid rgba(0,0,0,.1);
}

.dl-single-title{
  font-size:28px !important;
  line-height:1.15 !important;
  letter-spacing:-.035em !important;
  margin:0 0 10px !important;
  font-weight:800 !important;
}

.dl-single-price{
  color:#E8620A;
  font-size:24px;
  font-weight:800;
  margin-bottom:18px;
  margin-top:4px;
}

.dl-lock-panel{
  background:#fff9ea;
  border:1px solid rgba(232,98,10,.18);
  border-radius:10px;
  padding:22px;
}

.dl-lock-panel strong{
  display:block;
  font-size:20px;
  margin-bottom:8px;
}

body:not(.logged-in) .add_to_cart_button,
body:not(.logged-in) .single_add_to_cart_button,
body:not(.logged-in) form.cart,
.compare,
.yith-compare,
.woocommerce a.compare{
  display:none !important;
}
@media(max-width:1280px){
  .woocommerce .dl-market-page ul.products,
  .dl-market-page ul.products{
    grid-template-columns:repeat(auto-fill,minmax(200px,1fr)) !important;
  }
}
@media(max-width:980px){
  .dl-market-container{padding:0 18px}
  .dl-market-hero h1{font-size:48px !important}
  .woocommerce .dl-market-page ul.products,
  .dl-market-page ul.products{
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr)) !important;
    gap:14px !important;
  }
  .dl-mk2-sort,.dl-mk2-sort form,.dl-mk2-sort select{width:100% !important}
  .dl-single-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .woocommerce .dl-market-page ul.products,
  .dl-market-page ul.products{
    grid-template-columns:repeat(auto-fill,minmax(150px,1fr)) !important;
  }
  .dl-card-media{height:160px !important}
  .dl-card-title{font-size:14px !important}
  .dl-card-price{font-size:17px !important}
}

/* ── WCFM Store Tab Bar ── */
.tab_links_area,
ul.tab_links{
  display:flex !important;
  gap:0 !important;
  border-bottom:2px solid rgba(0,0,0,.08) !important;
  margin-bottom:28px !important;
  padding:0 !important;
  list-style:none !important;
  background:transparent !important;
}

ul.tab_links li{
  margin:0 !important;
  padding:0 !important;
  border:none !important;
  background:transparent !important;
}

ul.tab_links li a{
  display:inline-flex !important;
  align-items:center !important;
  height:42px !important;
  padding:0 20px !important;
  font-size:13px !important;
  font-weight:600 !important;
  color:#667085 !important;
  text-decoration:none !important;
  border-bottom:2px solid transparent !important;
  margin-bottom:-2px !important;
  border-radius:0 !important;
  background:transparent !important;
  transition:color .15s,border-color .15s !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
}

ul.tab_links li a:hover{
  color:#101010 !important;
  border-bottom-color:rgba(0,0,0,.2) !important;
  background:transparent !important;
}

ul.tab_links li.active a{
  color:#101010 !important;
  border-bottom-color:#E8620A !important;
  background:transparent !important;
}

/* DRINKLOG PHASE 1 NO RFQ COMMERCE */
.dl-eyebrow{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:#fff0b4;color:#E8620A;font-size:13px;font-weight:700;margin-bottom:14px}

.dl-button-orange,.dl-card-cta{min-height:42px;padding:0 18px;border-radius:999px;background:#E8620A;color:#fff!important;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center;border:0;font-weight:700;cursor:pointer}

.dl-card-cta{width:100%;background:#101010;margin-top:12px;font-size:13px}

.dl-card-cta.muted{background:#fff0b4;color:#E8620A!important}

.dl-store-directory{max-width:1360px;margin:0 auto;padding:64px 32px}

.dl-store-directory-head h1{margin:0 0 12px;font-size:64px;line-height:.92;letter-spacing:-.06em}

.dl-store-directory-head p{color:#667085;font-size:17px;margin:0 0 34px}

.dl-store-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}

.dl-store-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:24px;overflow:hidden;text-decoration:none;color:#101010;box-shadow:0 14px 34px rgba(0,0,0,.05)}

.dl-store-card-image{height:180px;background:#fff9ea;display:flex;align-items:center;justify-content:center;padding:22px}

.dl-store-card-image img{max-width:100%;max-height:140px;object-fit:contain}

.dl-store-card-body{padding:20px}

.dl-store-card-body h3{margin:12px 0 6px;font-size:22px;line-height:1.05;letter-spacing:-.04em}

.dl-store-card-body p{margin:0;color:#667085;line-height:1.5}

.dl-store-card-cats{
  font-size:12px;color:#E8620A;font-weight:600;
  margin-bottom:10px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

.dl-store-card-footer{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:14px;padding-top:12px;
  border-top:1px solid rgba(0,0,0,.06);
}

.dl-store-card-count{
  display:inline-flex;align-items:center;gap:5px;
  font-size:12px;font-weight:600;color:#667085;
}

.dl-store-card-cta{
  font-size:12px;font-weight:700;color:#101010;
  background:#FFE600;border-radius:999px;
  padding:4px 12px;
}

.dl-store-single{max-width:1280px;margin:0 auto;padding:64px 32px}

.dl-store-hero{display:grid;grid-template-columns:280px 1fr;gap:36px;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:28px;padding:36px;box-shadow:0 14px 34px rgba(0,0,0,.045)}

.dl-store-logo{background:#fff9ea;border-radius:22px;padding:24px;display:flex;align-items:center;justify-content:center;min-height:220px}

.dl-store-logo img{max-width:100%;max-height:170px;object-fit:contain}

.dl-store-hero h1{font-size:56px;line-height:.95;letter-spacing:-.06em;margin:16px 0}

.dl-store-meta span{background:#fff9ea;border-radius:999px;padding:9px 14px;font-weight:600}

.dl-apply-page{max-width:900px;margin:0 auto;padding:64px 28px}

.dl-apply-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:28px;padding:36px;box-shadow:0 14px 34px rgba(0,0,0,.05)}

.dl-apply-card h1{margin:0 0 12px;font-size:48px;line-height:.98;letter-spacing:-.055em}

.dl-apply-card p{color:#667085;line-height:1.6}

.dl-status-pill{display:inline-flex;min-height:38px;align-items:center;padding:0 14px;border-radius:999px;background:#fff9ea;color:#101010;font-weight:700;margin:14px 0 24px}

.dl-success-box{background:#ecfdf3;border:1px solid #bbf7d0;color:#166534;border-radius:18px;padding:18px;font-weight:700}

.dl-apply-form{display:grid;gap:16px}

.dl-apply-form label{display:grid;gap:7px;font-weight:700;color:#101010}

.dl-apply-form input,.dl-apply-form select{height:50px;border-radius:14px;border:1px solid rgba(0,0,0,.14);padding:0 14px;background:#fff}

.dl-account-status-card{background:#fff9ea;border:1px solid rgba(232,98,10,.16);border-radius:24px;padding:24px;margin:24px 0}

.dl-logo-placeholder{width:100%;height:100%;min-height:150px;border-radius:18px;background:#FFE600;border:1px dashed rgba(232,98,10,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px}

.dl-logo-placeholder img{max-width:160px!important;width:72%!important;height:auto!important;object-fit:contain!important}

.dl-logo-placeholder small{margin-top:10px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:rgba(0,0,0,.55);font-weight:700}

.dl-price-lock{min-height:36px;display:inline-flex;align-items:center;padding:0 12px;border-radius:12px;background:#fff9ea;color:#E8620A;font-size:13px;font-weight:700}

body:not(.logged-in) .add_to_cart_button,body:not(.logged-in) .single_add_to_cart_button,body:not(.logged-in) form.cart,.compare,.yith-compare,.woocommerce a.compare{display:none!important}
@media(max-width:980px){.dl-store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dl-store-hero{grid-template-columns:1fr}}
@media(max-width:640px){.dl-store-directory,.dl-store-single,.dl-apply-page{padding-left:18px;padding-right:18px}.dl-store-grid{grid-template-columns:1fr}.dl-store-directory-head h1,.dl-store-hero h1,.dl-apply-card h1{font-size:38px}}

/* =========================================================
   DRINKLOG FULL PHASE 1 — HOMEPAGE LOGO ONLY
   This affects homepage only. Other pages remain active.
   ========================================================= */
body.drinklog-home-logo-only{
  margin:0 !important;
  padding:0 !important;
  background:#FFE600 !important;
  overflow:hidden !important;
}

body.drinklog-home-logo-only .dl-header,
body.drinklog-home-logo-only .dl-footer,
body.drinklog-home-logo-only header,
body.drinklog-home-logo-only footer,
body.drinklog-home-logo-only .site-header,
body.drinklog-home-logo-only .site-footer{
  display:none !important;
}

.drinklog-home-logo-page{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  height:100dvh;
  background:#FFE600;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.drinklog-home-logo-svg{
  width:min(900px,78vw);
  height:auto;
  display:block;
}
@media(max-width:768px){
  .drinklog-home-logo-svg{
    width:min(520px,82vw);
  }
}

/* ============================================================
   HAMBURGER MENU (mobile)
   ============================================================ */
.dl-hamburger{
  display:none;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  width:40px;
  height:40px;
  border:none;
  background:none;
  cursor:pointer;
  padding:4px;
  border-radius:8px;
  flex-shrink:0;
}

.dl-hamburger-bar{
  display:block;
  width:22px;
  height:2px;
  background:#101010;
  border-radius:2px;
  transition:transform .22s ease, opacity .15s ease;
  transform-origin:center;
}

.dl-hamburger--open .dl-hamburger-bar:nth-child(1){ transform:translateY(7px) rotate(45deg); }

.dl-hamburger--open .dl-hamburger-bar:nth-child(2){ opacity:0; transform:scaleX(0); }

.dl-hamburger--open .dl-hamburger-bar:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ============================================================
   CART ICON (mobile) — ไอคอนส้มลอย + badge ดำ
   แสดงเฉพาะ <=900px คู่กับ hamburger (desktop ใช้ .dl-cart-btn pill)
   ============================================================ */
.dl-cart-mobile{
  display:none;
  position:relative;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  flex-shrink:0;
  border-radius:8px;
  -webkit-tap-highlight-color:transparent;
}
.dl-cart-mobile-ic{
  width:24px;
  height:24px;
  color:#E8620A;          /* stroke="currentColor" → ส้มตามโลโก้ */
  display:block;
}
.dl-cart-mobile:active{ background:rgba(0,0,0,.05); }
.dl-cart-mobile-badge{
  position:absolute;
  top:0;                  /* ชิดขอบบนของปุ่ม ไม่ทับตัวไอคอน */
  right:0;
  transform:translate(30%,-30%);
  min-width:17px;
  height:17px;
  padding:0 4px;
  border-radius:999px;
  background:#101010;
  color:#fff;
  font-family:'IBM Plex Sans',sans-serif;
  font-size:10px;
  font-weight:700;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid #FFE600;   /* ขอบสีพื้น topbar ให้ badge ลอยชัด */
  box-sizing:content-box;
  pointer-events:none;
}
.dl-cart-mobile-badge--empty{ display:none; }

/* Mobile menu panel */
.dl-menu-mobile-actions{
  display:none;
}
@media(max-width:900px){
  .dl-hamburger{display:flex}
  .dl-cart-mobile{
    display:flex;
    margin-left:auto;    /* ดันไปชิดขวา จับกลุ่มกับ hamburger */
    margin-right:2px;    /* ระยะห่างจาก hamburger */
  }
  .dl-nav{gap:0}         /* ตัด gap 28px ที่ทำให้กระจายห่าง */
  .dl-actions{display:none}
  
  

  .dl-menu{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    background:#FFE600;
    border-top:1px solid rgba(0,0,0,.08);
    border-bottom:2px solid rgba(0,0,0,.1);
    flex-direction:column;
    padding:12px 0 16px;
    gap:0;
    z-index:999;
    box-shadow:0 12px 32px rgba(0,0,0,.1);
  }
  .dl-menu.dl-menu--open{display:flex}
  .dl-menu a{
    padding:13px 24px;
    font-size:15px;
    font-weight:700;
    color:#101010;
    text-decoration:none;
    border-left:none;
    border-bottom:1px solid rgba(0,0,0,.06);
  }
  .dl-menu a:last-of-type{border-bottom:none}
  .dl-menu a:hover{background:rgba(0,0,0,.04)}

  .dl-menu-mobile-actions{
    display:flex;
    flex-direction:column;
    margin-top:8px;
    padding-top:8px;
    border-top:2px solid rgba(0,0,0,.08);
  }
  .dl-menu-mobile-actions a{
    padding:12px 24px;
    font-size:14px;
    font-weight:700;
    color:#E8620A !important;
    text-decoration:none;
    border-bottom:1px solid rgba(0,0,0,.06) !important;
  }

  /* Prevent body scroll when nav open */
  body.dl-nav-open{overflow:hidden}

  /* Relative position needed for absolute menu panel */
  
}

/* ============================================================
   SEARCH & FILTER BAR
   ============================================================ */
.dl-filter-bar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:20px;
  padding:14px 18px;
  margin-bottom:28px;
  box-shadow:0 4px 16px rgba(0,0,0,.05);
}

/* Search field */
.dl-filter-search{
  flex:1;
  min-width:180px;
  position:relative;
  display:flex;
  align-items:center;
}

.dl-filter-search-icon{
  position:absolute;
  left:12px;
  pointer-events:none;
  flex-shrink:0;
}

.dl-filter-input{
  width:100%;
  height:42px;
  border:1.5px solid rgba(0,0,0,.12);
  border-radius:12px;
  padding:0 36px 0 36px;
  font-size:14px;
  font-family:inherit;
  background:#fafafa;
  color:#101010;
  outline:none;
  transition:border-color .15s,box-shadow .15s;
}

.dl-filter-input:focus{
  border-color:#E8620A;
  box-shadow:0 0 0 3px rgba(232,98,10,.1);
  background:#fff;
}

.dl-filter-input::placeholder{color:#bbb}

.dl-filter-clear{
  position:absolute;
  right:12px;
  font-size:12px;
  color:#aaa;
  text-decoration:none;
  line-height:1;
}

.dl-filter-clear:hover{color:#E8620A}

/* Divider between search and selects */
.dl-filter-search::after{
  content:'';
  display:block;
  width:1px;
  height:28px;
  background:rgba(0,0,0,.1);
  margin-left:12px;
  flex-shrink:0;
}

/* Select wrappers */
.dl-filter-group{flex-shrink:0}

.dl-filter-select{
  height:42px;
  border:1.5px solid rgba(0,0,0,.12);
  border-radius:12px;
  padding:0 32px 0 14px;
  font-size:13.5px;
  font-family:inherit;
  font-weight:600;
  background:#fafafa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center;
  appearance:none;
  color:#101010;
  cursor:pointer;
  outline:none;
  transition:border-color .15s;
}

.dl-filter-select:focus{border-color:#E8620A}

/* Search button */
.dl-filter-btn{
  height:42px;
  padding:0 22px;
  border-radius:999px;
  background:#101010;
  color:#fff;
  border:none;
  font-size:13.5px;
  font-weight:700;
  font-family:inherit;
  cursor:pointer;
  white-space:nowrap;
  transition:background .15s;
  flex-shrink:0;
}

.dl-filter-btn:hover{background:#333}

/* Active filter chips */
.dl-filter-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  width:100%;
  padding-top:4px;
}

.dl-filter-chips--standalone{
  align-items:center;
  margin:0 0 24px;
  padding-top:0;
}
.dl-filter-chips-label{
  font-size:14px;
  color:#6b7280;
  font-weight:600;
  margin-right:2px;
}

.dl-filter-chip{
  display:inline-flex;
  align-items:center;
  height:28px;
  padding:0 12px;
  border-radius:999px;
  background:#fff0b4;
  color:#E8620A;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
  transition:background .15s;
}

.dl-filter-chip:hover{background:#ffe066}

.dl-filter-chip--clear{
  background:#f0f0f0;
  color:#555;
}

.dl-filter-chip--clear:hover{background:#e0e0e0;color:#101010}

/* No results state */
.dl-no-results{
  text-align:center;
  padding:80px 24px;
}

.dl-no-results-icon{font-size:48px;margin-bottom:16px}

.dl-no-results h2{font-size:28px;font-weight:800;letter-spacing:-.04em;margin-bottom:8px}

.dl-no-results p{color:#667085;margin-bottom:24px}
/* Responsive filter bar */
@media(max-width:900px){
  .dl-filter-bar{
    padding:12px 14px;
    gap:8px;
    border-radius:16px;
  }
  .dl-filter-search{min-width:100%;order:-1}
  .dl-filter-search::after{display:none}
  .dl-filter-group,.dl-filter-btn{flex:1;min-width:calc(50% - 4px)}
  .dl-filter-select,.dl-filter-btn{width:100%}
}
@media(max-width:480px){
  .dl-filter-group,.dl-filter-btn{min-width:100%}
}

/* ============================================================
   MY ACCOUNT PAGE — Drinklog design override
   ============================================================ */

/* Page background */
.woocommerce-account .dl-content,
.woocommerce-account body,
body.woocommerce-account{
  background:#fffaf0 !important;
}

/* Remove default WooCommerce account wrapper box */

/* Page title */
.woocommerce-account h1.entry-title,
.woocommerce-account .entry-title,
.woocommerce-account h1.page-title{
  display:none !important;
}

/* Two-column layout */
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content{
  float:none !important;
  width:auto !important;
}

.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:28px;
  align-items:start;
}

/* Login/register page has no nav — single column centered */

/* Sidebar nav */
.woocommerce-MyAccount-navigation{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 4px 16px rgba(0,0,0,.05);
  position:sticky;
  top:24px;
}

.woocommerce-MyAccount-navigation ul{
  list-style:none !important;
  margin:0 !important;
  padding:8px 0 !important;
}

.woocommerce-MyAccount-navigation ul li{
  margin:0 !important;
  padding:0 !important;
}

.woocommerce-MyAccount-navigation ul li a{
  display:flex !important;
  align-items:center !important;
  padding:12px 20px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  color:#667085 !important;
  text-decoration:none !important;
  border-left:3px solid transparent !important;
  transition:background .12s, color .12s !important;
}

.woocommerce-MyAccount-navigation ul li a:hover{
  background:#fff9ea !important;
  color:#101010 !important;
}

.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a{
  color:#E8620A !important;
  border-left-color:#E8620A !important;
  background:#fff9ea !important;
  font-weight:700 !important;
}

/* Divider before logout */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout{
  border-top:1px solid rgba(0,0,0,.07) !important;
  margin-top:4px !important;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a{
  color:#dc2626 !important;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover{
  background:#fef2f2 !important;
}

/* Content area */
.woocommerce-MyAccount-content{
  min-width:0;
}

/* Welcome text */
.woocommerce-MyAccount-content > p:first-child{
  font-size:14px !important;
  color:#667085 !important;
  margin-bottom:20px !important;
  line-height:1.6 !important;
}

.woocommerce-MyAccount-content > p:first-child a{
  color:#E8620A !important;
  font-weight:600 !important;
  text-decoration:none !important;
}

/* Orders table */
.woocommerce-account .woocommerce-orders-table{
  width:100% !important;
  border-collapse:collapse !important;
  background:#fff !important;
  border-radius:16px !important;
  overflow:hidden !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 4px 16px rgba(0,0,0,.05) !important;
}

.woocommerce-account .woocommerce-orders-table thead th{
  background:#fff9ea !important;
  color:#101010 !important;
  font-size:12px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  padding:12px 18px !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
}

.woocommerce-account .woocommerce-orders-table tbody td{
  padding:14px 18px !important;
  font-size:13.5px !important;
  border-bottom:1px solid rgba(0,0,0,.05) !important;
  color:#101010 !important;
}

.woocommerce-account .woocommerce-orders-table tbody tr:last-child td{
  border-bottom:none !important;
}

.woocommerce-account .woocommerce-orders-table .woocommerce-button,
.woocommerce-account .woocommerce-orders-table a.button{
  height:32px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  background:#101010 !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  display:inline-flex !important;
  align-items:center !important;
  border:none !important;
  margin:3px 0 !important;
}

/* เว้นระยะระหว่างปุ่ม (View / Invoice) */
.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .woocommerce-button + .woocommerce-button,
.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions a.button + a.button{
  margin-left:8px !important;
}

/* มือถือ: จัดปุ่ม View / Invoice ให้เรียงตรงกัน กว้างเท่ากัน */
@media(max-width:768px){
  .woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:8px !important;
  }
  .woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .woocommerce-button,
  .woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions a.button{
    margin:0 !important;
    min-width:104px !important;
    justify-content:center !important;
  }
}

/* Order status badges */
.woocommerce-account .woocommerce-orders-table .woocommerce-order-status-processing,
.woocommerce-account mark.order-status{
  background:#fff0b4 !important;
  color:#E8620A !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  font-size:11px !important;
  font-weight:700 !important;
  display:inline-flex !important;
  align-items:center !important;
}

/* Form fields */
.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row{
  margin-bottom:14px !important;
}

.woocommerce-account .woocommerce-EditAccountForm input,
.woocommerce-account .woocommerce-address-fields input,
.woocommerce-account .woocommerce-EditAccountForm select,
.woocommerce-account .woocommerce-address-fields select{
  height:48px !important;
  border-radius:12px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  padding:0 14px !important;
  font-size:14px !important;
  font-family:inherit !important;
  width:100% !important;
  background:#fff !important;
  color:#101010 !important;
}

.woocommerce-account .woocommerce-EditAccountForm label,
.woocommerce-account .woocommerce-address-fields label{
  font-size:13px !important;
  font-weight:700 !important;
  color:#101010 !important;
  margin-bottom:5px !important;
  display:block !important;
}

.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button,
.woocommerce-account .woocommerce-Button[type="submit"],
.woocommerce-account button[type="submit"]{
  height:48px !important;
  padding:0 28px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
}
/* Responsive */
@media(max-width:768px){
  .woocommerce-account .woocommerce{
    grid-template-columns:1fr !important;
    padding:24px 16px 48px !important;
  }
  .woocommerce-MyAccount-navigation{
    position:static !important;
  }
  .woocommerce-MyAccount-navigation ul{
    display:flex !important;
    overflow-x:auto !important;
    padding:6px 8px !important;
    gap:4px !important;
    scrollbar-width:none !important;
  }
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woocommerce-MyAccount-navigation ul li a{
    white-space:nowrap !important;
    border-left:none !important;
    border-radius:999px !important;
    padding:8px 16px !important;
  }
  .woocommerce-MyAccount-navigation ul li.is-active a{
    background:#FFE600 !important;
    color:#101010 !important;
    border-left:none !important;
  }
  .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout{
    border-top:none !important;
    margin-top:0 !important;
  }
  .woocommerce-account .woocommerce-orders-table{
    display:block !important;
    overflow-x:auto !important;
  }
}

/* ============================================================
   WOOCOMMERCE MY ACCOUNT — full restyle
   ============================================================ */

/* Page background */
.woocommerce-account{
  background:#fffaf0 !important;
}

/* Remove default WC account wrapper styles */

/* ── Two-column layout ── */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{
  float:none !important;
  width:auto !important;
}

/* Login/register page has no nav — single column centered */
body
@media(max-width:700px){
  .woocommerce-account .woocommerce{
    grid-template-columns:1fr;
  }
}

/* ── Sidebar navigation ── */
.woocommerce-account .woocommerce-MyAccount-navigation{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:20px;
  padding:10px 0;
  box-shadow:0 4px 16px rgba(0,0,0,.05);
  position:sticky;
  top:24px;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  border-bottom:1px solid rgba(0,0,0,.05);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child{
  border-bottom:none;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a{
  display:block;
  padding:11px 20px;
  font-size:13.5px;
  font-weight:600;
  color:#444 !important;
  text-decoration:none !important;
  transition:background .12s, color .12s;
  border-left:3px solid transparent;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover{
  background:#fff9ea;
  color:#101010 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a{
  color:#E8620A !important;
  border-left-color:#E8620A;
  background:#fff9ea;
  font-weight:700;
}

/* ── Content area ── */
.woocommerce-account .woocommerce-MyAccount-content{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:20px;
  padding:32px;
  box-shadow:0 4px 16px rgba(0,0,0,.05);
  min-height:300px;
}

/* ── "My account" page title — hide the default h1 ── */
.woocommerce-account h1.entry-title,
.woocommerce-account h1.page-title{
  display:none !important;
}

/* ── Welcome message ── */
.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  font-size:14px;
  color:#667085;
  margin-bottom:20px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(0,0,0,.06);
  line-height:1.6;
}

/* ── Order table ── */
.woocommerce-account .woocommerce-orders-table,
.woocommerce-account table.shop_table{
  width:100%;
  border-collapse:collapse;
  font-size:13.5px;
}

.woocommerce-account table.shop_table th{
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#999;
  padding:10px 14px;
  border-bottom:2px solid rgba(0,0,0,.07);
  text-align:left;
}

.woocommerce-account table.shop_table td{
  padding:14px 14px;
  border-bottom:1px solid rgba(0,0,0,.06);
  color:#101010;
  vertical-align:middle;
}

.woocommerce-account table.shop_table tr:last-child td{
  border-bottom:none;
}

.woocommerce-account table.shop_table .button,
.woocommerce-account .woocommerce-button{
  display:inline-flex;
  align-items:center;
  height:34px;
  padding:0 16px;
  border-radius:999px;
  background:#101010;
  color:#fff !important;
  font-size:12px;
  font-weight:700;
  text-decoration:none !important;
  border:none;
  cursor:pointer;
  font-family:inherit;
  transition:background .12s;
}

.woocommerce-account table.shop_table .button:hover{
  background:#333;
}

/* Order status badges */
.woocommerce-account .woocommerce-orders-table__cell-order-status .wc-item-meta,
.woocommerce-account mark.order-status{
  display:inline-flex;
  align-items:center;
  height:26px;
  padding:0 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  background:#fff9ea;
  color:#E8620A;
}

.woocommerce-account mark.order-status.status-completed{background:#ecfdf3;color:#166534}

.woocommerce-account mark.order-status.status-processing{background:#fff0b4;color:#b45309}

.woocommerce-account mark.order-status.status-on-hold{background:#f0f0f0;color:#555}

.woocommerce-account mark.order-status.status-cancelled{background:#fef2f2;color:#991b1b}

/* ── Address cards ── */
.woocommerce-account .woocommerce-Addresses{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.woocommerce-account .woocommerce-Address{
  background:#fff9ea;
  border:1px solid rgba(0,0,0,.07);
  border-radius:16px;
  padding:20px;
}

.woocommerce-account .woocommerce-Address-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:12px;
}

.woocommerce-account .woocommerce-Address-title h3{
  font-size:14px;
  font-weight:800;
  letter-spacing:-.02em;
  margin:0;
}

.woocommerce-account .woocommerce-Address-title .edit{
  font-size:12px;
  font-weight:700;
  color:#E8620A !important;
  text-decoration:none !important;
}
@media(max-width:600px){
  .woocommerce-account .woocommerce-Addresses{grid-template-columns:1fr}
}

/* ── Account details form ── */
.woocommerce-account .woocommerce-EditAccountForm .form-row label,
.woocommerce-account .woocommerce-form .form-row label{
  font-size:12.5px;
  font-weight:700;
  color:#101010;
  display:block;
  margin-bottom:5px;
}

.woocommerce-account .woocommerce-EditAccountForm .form-row input,
.woocommerce-account .woocommerce-form .form-row input{
  width:100%;
  height:46px;
  border:1.5px solid rgba(0,0,0,.12);
  border-radius:12px;
  padding:0 14px;
  font-size:14px;
  font-family:inherit;
  background:#fff;
  color:#101010;
  outline:none;
  transition:border-color .15s;
}

.woocommerce-account .woocommerce-EditAccountForm .form-row input:focus{
  border-color:#E8620A;
  box-shadow:0 0 0 3px rgba(232,98,10,.1);
}

.woocommerce-account .woocommerce-EditAccountForm button[type="submit"],
.woocommerce-account .woocommerce-form button[type="submit"]{
  height:48px;
  padding:0 28px;
  border-radius:999px;
  background:#E8620A;
  color:#fff;
  border:none;
  font-size:14px;
  font-weight:700;
  font-family:inherit;
  cursor:pointer;
  margin-top:8px;
}

/* ── Notices ── */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info{
  border:none !important;
  border-radius:14px !important;
  background:#fff0b4 !important;
  color:#101010 !important;
  padding:14px 18px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  margin-bottom:20px !important;
}

.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before{
  display:none !important;
}

.woocommerce-account .woocommerce-error{
  border:none !important;
  border-radius:14px !important;
  background:#fef2f2 !important;
  color:#991b1b !important;
  padding:14px 18px !important;
  list-style:none !important;
  margin-bottom:20px !important;
}

/* ============================================================
   LOGIN / REGISTER PAGE — full restyle
   WooCommerce real class names: .col2-set, .col-1, .col-2
   ============================================================ */

/* Page background */
body.woocommerce-account:not(.logged-in){
  background:#fffaf0 !important;
}

/* Hide "My account" page title — cover all possible selectors */
body.woocommerce-account .entry-title,
body.woocommerce-account h1.entry-title,
body.woocommerce-account h1.page-title,
body.woocommerce-account .page-title,
body.woocommerce-account .woocommerce > h2:first-child{
  display:none !important;
}

/* Center WC wrapper */
body.woocommerce-account:not(.logged-in) .woocommerce{
  display:block !important;
  grid-template-columns:unset !important;
  max-width:900px !important;
  margin:0 auto !important;
  padding:52px 28px 80px !important;
}

/* ── Two-column grid: WC real classes ── */
body.woocommerce-account:not(.logged-in) .col2-set{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:24px !important;
  width:100% !important;
  float:none !important;
  clear:both !important;
}

/* Each column = card */
body.woocommerce-account:not(.logged-in) .col2-set .col-1,
body.woocommerce-account:not(.logged-in) .col2-set .col-2{
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:22px !important;
  padding:32px 28px 28px !important;
  box-shadow:0 6px 24px rgba(0,0,0,.05) !important;
  width:auto !important;
  float:none !important;
}

/* Column headings */
body.woocommerce-account:not(.logged-in) .col2-set h2{
  font-size:24px !important;
  font-weight:800 !important;
  letter-spacing:-.05em !important;
  color:#101010 !important;
  margin-bottom:22px !important;
  font-family:inherit !important;
}

/* Form rows */
body.woocommerce-account:not(.logged-in) .form-row{
  margin-bottom:14px !important;
  padding:0 !important;
}

body.woocommerce-account:not(.logged-in) .form-row label{
  display:block !important;
  font-size:12.5px !important;
  font-weight:700 !important;
  color:#101010 !important;
  margin-bottom:6px !important;
}

body.woocommerce-account:not(.logged-in) .form-row abbr{
  color:#E8620A;
  text-decoration:none;
  border:none;
}

/* Inputs */
body.woocommerce-account:not(.logged-in) .form-row input[type="text"],
body.woocommerce-account:not(.logged-in) .form-row input[type="email"],
body.woocommerce-account:not(.logged-in) .form-row input[type="password"]{
  width:100% !important;
  height:48px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  border-radius:14px !important;
  padding:0 16px !important;
  font-size:14px !important;
  font-family:inherit !important;
  background:#fafafa !important;
  color:#101010 !important;
  box-shadow:none !important;
  outline:none !important;
  transition:border-color .15s, box-shadow .15s !important;
}

body.woocommerce-account:not(.logged-in) .form-row input:focus{
  border-color:#E8620A !important;
  box-shadow:0 0 0 3px rgba(232,98,10,.1) !important;
  background:#fff !important;
}

/* Remember me row */
body.woocommerce-account:not(.logged-in) .form-row.woocommerce-form__input-checkbox,
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:16px 0 !important;
  padding:0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form__input-checkbox input[type="checkbox"]{
  width:18px !important;
  height:18px !important;
  border-radius:6px !important;
  accent-color:#E8620A !important;
  cursor:pointer !important;
  flex-shrink:0 !important;
  margin:0 !important;
}

body

/* Submit buttons */
body.woocommerce-account:not(.logged-in) button[type="submit"],
body.woocommerce-account:not(.logged-in) input[type="submit"]{
  width:100% !important;
  height:50px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:15px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  transition:background .15s !important;
  box-shadow:0 8px 24px rgba(232,98,10,.2) !important;
  margin-top:6px !important;
  display:block !important;
  padding:0 !important;
}

body.woocommerce-account:not(.logged-in) button[type="submit"]:hover{
  background:#c4500a !important;
}

/* Lost password link */
body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword,
body.woocommerce-account:not(.logged-in) .lost_password{
  margin-top:14px !important;
  text-align:center !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a,
body.woocommerce-account:not(.logged-in) .lost_password a{
  font-size:13px !important;
  font-weight:600 !important;
  color:#9ca3af !important;
  text-decoration:none !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a:hover{
  color:#E8620A !important;
}

/* Register help text */
body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text p,
body.woocommerce-account:not(.logged-in) .col-2 > p{
  font-size:13px !important;
  color:#6b7280 !important;
  line-height:1.6 !important;
  margin-bottom:16px !important;
}

/* WC notices */
body.woocommerce-account:not(.logged-in) .woocommerce-error,
body.woocommerce-account:not(.logged-in) ul.woocommerce-error{
  border:none !important;
  border-radius:14px !important;
  background:#fef2f2 !important;
  color:#991b1b !important;
  padding:14px 18px !important;
  list-style:none !important;
  margin-bottom:20px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-message{
  border:none !important;
  border-radius:14px !important;
  background:#fff0b4 !important;
  color:#101010 !important;
  padding:14px 18px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  margin-bottom:20px !important;
}
/* Mobile */
@media(max-width:640px){
  body.woocommerce-account:not(.logged-in) .col2-set{
    grid-template-columns:1fr !important;
  }
}

/* ── HEADER: fallback when SVG file missing ── */
.dl-brand-text-fallback{
  font-size:26px;
  font-weight:800;
  letter-spacing:-.08em;
  color:#E8620A;
  text-decoration:none;
  font-family:inherit;
}

/* account page — remove card boxing, go full-width */
.dl-content--account{
  max-width:100% !important;
  padding:0 !important;
  background:#fffaf0;
}

/* Remember me — WC wraps checkbox inside label */
body.woocommerce-account:not(.logged-in) .woocommerce-form__label-for-checkbox{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  color:#374151 !important;
  cursor:pointer !important;
  margin:16px 0 !important;
}

body.woocommerce-account:not(.logged-in) .woocommerce-form__input-checkbox{
  width:18px !important;
  height:18px !important;
  accent-color:#E8620A !important;
  cursor:pointer !important;
  flex-shrink:0 !important;
  margin:0 !important;
  border-radius:5px !important;
}

/* hide the old form-row wrapper margin for checkbox row */
body.woocommerce-account:not(.logged-in) .form-row.woocommerce-form__input-checkbox{
  margin:0 !important;
  padding:0 !important;
}

/* ============================================================
   SINGLE PRODUCT PAGE — layout fix
   ============================================================ */
.dl-single-page{
  max-width:1200px;
  margin:0 auto;
  padding:40px 28px 80px;
}

/* Hide any residual WC sidebars/widgets on product pages */
.single-product .widget-area,
.single-product #secondary,
.single-product aside,
.woocommerce-page .widget-area{
  display:none !important;
}

/* Full-width on single product */
.single-product .entry-content,
.single-product #primary,
.single-product .site-main{
  width:100% !important;
  float:none !important;
}

/* ── Single product: tabs gap from product grid ── */
.dl-product-tabs{
  margin-top:36px;
}

/* WooCommerce tabs restyle */
.dl-product-tabs .woocommerce-tabs ul.tabs{
  padding:0 0 0 0 !important;
  margin:0 0 0 0 !important;
  list-style:none;
  display:flex;
  gap:4px;
  border-bottom:1px solid rgba(0,0,0,.08);
}

.dl-product-tabs .woocommerce-tabs ul.tabs li{
  border:none !important;
  background:transparent !important;
  border-radius:0;
  margin:0;
}

.dl-product-tabs .woocommerce-tabs ul.tabs li a{
  font-size:13.5px;
  font-weight:700;
  color:#6b7280;
  padding:10px 18px;
  display:block;
  border-bottom:2px solid transparent;
  text-decoration:none;
  transition:color .15s,border-color .15s;
}

.dl-product-tabs .woocommerce-tabs ul.tabs li.active a,
.dl-product-tabs .woocommerce-tabs ul.tabs li a:hover{
  color:#101010;
  border-bottom-color:#E8620A;
}

.dl-product-tabs .woocommerce-tabs .panel{
  padding:24px 0;
  font-size:14px;
  line-height:1.7;
  color:#374151;
}
.dl-gallery{width:100%}
.dl-gal-main{width:100%!important}

/* ============================================================
   SINGLE PRODUCT SUMMARY — spacing + quantity + add to cart
   ============================================================ */

/* Summary card spacing */
.dl-single-summary{
  padding:28px 28px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
}

/* Badge → title spacing */
.dl-badge-store{
  margin-bottom:10px !important;
}

/* Title */
/* Price */
.dl-single-price{
  margin:0 0 20px !important;
  margin-top:0 !important;
  padding-bottom:20px !important;
  border-bottom:1px solid rgba(0,0,0,.07) !important;
}

/* Strikethrough price */
.dl-single-price del{
  font-size:16px !important;
  color:#9ca3af !important;
  font-weight:600 !important;
  margin-right:6px !important;
}
.dl-single-price ins{
  text-decoration:none !important;
}

/* ── Quantity + Add to cart row ── */
.single-product .cart,
form.cart{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 0 16px !important;
  padding:0 !important;
}

/* Quantity wrapper */
.woocommerce div.product form.cart .quantity{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  background:transparent !important;
  border-radius:0 !important;
  overflow:visible !important;
  border:none !important;
  height:auto !important;
  flex-shrink:0 !important;
}

/* Quantity input */
.woocommerce div.product form.cart .qty,
input.qty{
  width:52px !important;
  height:38px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  border-radius:10px !important;
  background:#fff !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  color:#101010 !important;
  -moz-appearance:textfield !important;
  outline:none !important;
  padding:0 !important;
}
input.qty::-webkit-inner-spin-button,
input.qty::-webkit-outer-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

/* +/- buttons — orange pill style */
.dl-qty-btn{
  width:38px !important;
  height:38px !important;
  border-radius:50% !important;
  border:none !important;
  background:#E8620A !important;
  color:#fff !important;
  font-size:20px !important;
  font-weight:700 !important;
  line-height:1 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  flex-shrink:0 !important;
  transition:background .12s, transform .1s !important;
  padding:0 !important;
  user-select:none !important;
  box-shadow:0 4px 12px rgba(232,98,10,.25) !important;
}
.dl-qty-btn:hover{
  background:#c4500a !important;
}
.dl-qty-btn:active{
  transform:scale(.92) !important;
}

/* ── Add to Cart button ── */
.woocommerce div.product form.cart .single_add_to_cart_button,
.single_add_to_cart_button,
button.single_add_to_cart_button{
  flex:1 !important;
  height:46px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:15px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  letter-spacing:-.01em !important;
  transition:background .15s !important;
  box-shadow:0 8px 22px rgba(232,98,10,.22) !important;
  padding:0 24px !important;
  text-transform:none !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{
  background:#c4500a !important;
}

/* Compare link — ซ่อนทั้งหมด (ไม่ใช้ฟีเจอร์เปรียบเทียบ) */
.woocommerce .compare,
.woocommerce a.compare,
.compare,
.yith-compare,
a.compare-button,
.wcboost-products-compare-button,
.wcboost-products-compare-button--single,
.single-product .wcboost-products-compare-button,
.yith-woocompare-widget{
  display:none !important;
}

/* ── Hide WooCommerce default quantity buttons, keep only dl-qty-btn ── */
.woocommerce div.product form.cart .quantity .qty-plus,
.woocommerce div.product form.cart .quantity .qty-minus,
.woocommerce div.product form.cart .quantity button:not(.dl-qty-btn),
.woocommerce div.product form.cart .quantity input[type="button"],
.woocommerce .quantity .plus:not(.dl-qty-btn),
.woocommerce .quantity .minus:not(.dl-qty-btn),
.quantity .plus:not(.dl-qty-btn),
.quantity .minus:not(.dl-qty-btn){
  display:none !important;
}

/* ── Cart button with count badge ── */
.dl-cart-btn{
  position:relative;
  gap:6px;
}
.dl-cart-count{
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#FFE600;
  color:#101010;
  font-size:11px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  transition:transform .2s cubic-bezier(.34,1.56,.64,1), opacity .2s;
}
.dl-cart-count--empty{
  opacity:0;
  transform:scale(0);
  width:0;
  min-width:0;
  padding:0;
  overflow:hidden;
}

/* Mobile cart badge — same style, dark background for yellow menu */
.dl-menu-mobile-actions .dl-cart-count{
  background:#101010 !important;
  color:#FFE600 !important;
}

/* ── Add to cart button — mobile proportions fix ── */
.woocommerce div.product form.cart .single_add_to_cart_button,
.single_add_to_cart_button,
button.single_add_to_cart_button{
  white-space:nowrap !important;
  height:46px !important;
  min-width:130px !important;
  flex:1 !important;
  font-size:14px !important;
  padding:0 20px !important;
}

/* Cart row — wrap on small screens */
.single-product .cart,
form.cart{
  flex-wrap:nowrap !important;
}

@media(max-width:480px){
  .single-product .cart,
  form.cart{
    flex-wrap:wrap !important;
    gap:10px !important;
  }
  .woocommerce div.product form.cart .quantity{
    flex-shrink:0 !important;
  }
  .woocommerce div.product form.cart .single_add_to_cart_button{
    width:100% !important;
    flex:none !important;
    min-width:0 !important;
  }
  /* สัดส่วนมือถือ — กระชับ padding + ระยะ */
  .dl-single-summary{ padding:20px 18px !important; }
  .dl-single-title{ font-size:24px !important; margin-bottom:8px !important; }
  .dl-single-short{ font-size:14px !important; margin:6px 0 2px !important; }
  .dl-single-price{ margin:0 0 14px !important; padding-bottom:14px !important; }
  .dl-single-price ins,
  .dl-single-price ins .amount{ font-size:26px !important; }
  /* qty + ปุ่ม ให้ qty อยู่บรรทัดบน ปุ่มเต็มกว้างล่าง */
  .woocommerce div.product form.cart .quantity{ justify-content:center !important; }
  /* − [input] + อยู่แถวเดียว จัดกึ่งกลาง, ปุ่ม Add to cart เต็มกว้างบรรทัดล่าง */
  .single-product .cart,
  form.cart{ align-items:center !important; justify-content:center !important; }
  .dl-qty-minus,
  .dl-qty-plus{ order:0 !important; }
  .woocommerce div.product form.cart .quantity{ order:0 !important; }
  .woocommerce div.product form.cart .single_add_to_cart_button{ order:5 !important; flex-basis:100% !important; margin-top:10px !important; }
}

/* ============================================================
   CART PAGE — full restyle
   ============================================================ */

/* Page background */
.woocommerce-cart{
  background:#fffaf0 !important;
}

/* Remove default title, use page.php card title */
.woocommerce-cart h1.entry-title,
.woocommerce-cart .entry-title{
  font-size:32px !important;
  font-weight:900 !important;
  letter-spacing:-.05em !important;
  color:#101010 !important;
  margin:0 0 24px !important;
}

/* Main wrapper */
.woocommerce-cart .woocommerce{
  max-width:900px;
  margin:0 auto;
  padding:40px 24px 80px;
}

/* ── Cart table → card style ── */
.woocommerce-cart table.shop_table{
  width:100%;
  border-collapse:collapse;
  border:none !important;
  background:#fff;
  border-radius:20px !important;
  overflow:hidden;
  box-shadow:0 4px 20px rgba(0,0,0,.06);
  margin-bottom:24px !important;
}

/* Column headers */
.woocommerce-cart table.shop_table thead th{
  font-size:11px !important;
  font-weight:700 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  color:#9ca3af !important;
  padding:16px 18px !important;
  background:#fafafa !important;
  border-bottom:1px solid rgba(0,0,0,.07) !important;
  border-top:none !important;
}

/* Cart item rows */
.woocommerce-cart table.shop_table td{
  padding:18px 18px !important;
  vertical-align:middle !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  font-size:14px !important;
}
.woocommerce-cart table.shop_table tr:last-child td{
  border-bottom:none !important;
}

/* Remove button */
.woocommerce-cart table.shop_table .product-remove a{
  width:28px !important;
  height:28px !important;
  border-radius:50% !important;
  background:#fef2f2 !important;
  color:#dc2626 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:14px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  transition:background .15s !important;
  line-height:1 !important;
}
.woocommerce-cart table.shop_table .product-remove a:hover{
  background:#dc2626 !important;
  color:#fff !important;
}

/* Product thumbnail */
.woocommerce-cart table.shop_table .product-thumbnail img{
  width:64px !important;
  height:64px !important;
  object-fit:contain !important;
  border-radius:10px !important;
  border:1px solid rgba(0,0,0,.07) !important;
  background:#f8f8f8 !important;
  display:block !important;
}

/* Product name */
.woocommerce-cart table.shop_table .product-name a{
  font-weight:700 !important;
  color:#101010 !important;
  text-decoration:none !important;
  font-size:14px !important;
}
.woocommerce-cart table.shop_table .product-name a:hover{
  color:#E8620A !important;
}

/* Price */
.woocommerce-cart table.shop_table .product-price,
.woocommerce-cart table.shop_table .product-subtotal{
  font-weight:800 !important;
  color:#101010 !important;
}
.woocommerce-cart table.shop_table .product-subtotal{
  color:#E8620A !important;
}

/* Quantity in cart */
.woocommerce-cart table.shop_table .product-quantity .qty{
  width:60px !important;
  height:40px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  border-radius:10px !important;
  text-align:center !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  background:#fff !important;
}
/* +/- wrap row in cart */
.woocommerce-cart table.shop_table .product-quantity .dl-qty-wrap{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  justify-content:center !important;
}

/* ── Coupon + Update row ── */
.woocommerce-cart table.shop_table .actions{
  padding:16px 18px !important;
  background:#fafafa !important;
  border-top:1px solid rgba(0,0,0,.06) !important;
}
.woocommerce-cart table.shop_table .actions .coupon{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
}
.woocommerce-cart .actions .coupon{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  width:100% !important;
}
.woocommerce-cart .coupon #coupon_code{
  width:100% !important;
  height:48px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  border-radius:14px !important;
  padding:0 16px !important;
  font-size:14px !important;
  font-family:inherit !important;
  background:#fff !important;
  outline:none !important;
  color:#101010 !important;
}
.woocommerce-cart .coupon #coupon_code:focus{
  border-color:#E8620A !important;
  box-shadow:0 0 0 3px rgba(232,98,10,.1) !important;
}
.woocommerce-cart .coupon .button,
.woocommerce-cart button[name="apply_coupon"]{
  width:100% !important;
  height:48px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  box-shadow:0 6px 18px rgba(232,98,10,.2) !important;
  transition:background .15s !important;
}
.woocommerce-cart button[name="apply_coupon"]:hover{
  background:#c4500a !important;
}
.woocommerce-cart button[name="update_cart"]{
  height:42px !important;
  padding:0 20px !important;
  border-radius:999px !important;
  background:#f3f4f6 !important;
  color:#6b7280 !important;
  border:none !important;
  font-size:13px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  float:right !important;
  transition:background .15s !important;
}
.woocommerce-cart button[name="update_cart"]:not([disabled]):hover{
  background:#e5e7eb !important;
  color:#101010 !important;
}

/* ── Cart totals card ── */
.woocommerce-cart .cart_totals{
  background:#fff !important;
  border-radius:20px !important;
  padding:24px !important;
  box-shadow:0 4px 20px rgba(0,0,0,.06) !important;
  border:none !important;
}
.woocommerce-cart .cart_totals h2{
  font-size:20px !important;
  font-weight:800 !important;
  letter-spacing:-.03em !important;
  margin:0 0 18px !important;
  color:#101010 !important;
}
.woocommerce-cart .cart_totals table{
  width:100% !important;
  border-collapse:collapse !important;
  border:none !important;
}
.woocommerce-cart .cart_totals table th{
  font-size:13px !important;
  font-weight:700 !important;
  color:#6b7280 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  text-align:left !important;
  width:40% !important;
  background:transparent !important;
  border-top:none !important;
}
.woocommerce-cart .cart_totals table td{
  font-size:13.5px !important;
  font-weight:700 !important;
  color:#101010 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  text-align:right !important;
  background:transparent !important;
}
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td{
  font-size:16px !important;
  border-bottom:none !important;
  padding-top:16px !important;
}
.woocommerce-cart .cart_totals .order-total td{
  color:#E8620A !important;
  font-size:22px !important;
}

/* Proceed to checkout button */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart a.checkout-button{
  display:block !important;
  width:100% !important;
  height:52px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:700 !important;
  text-decoration:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin-top:18px !important;
  box-shadow:0 8px 22px rgba(232,98,10,.22) !important;
  transition:background .15s !important;
  border:none !important;
}
.woocommerce-cart a.checkout-button:hover{
  background:#c4500a !important;
}

/* Cart notices */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info{
  border:none !important;
  border-radius:14px !important;
  background:#fff0b4 !important;
  color:#101010 !important;
  padding:14px 18px !important;
  font-size:13.5px !important;
  font-weight:600 !important;
  margin-bottom:20px !important;
}
.woocommerce-cart .woocommerce-message::before,
.woocommerce-cart .woocommerce-info::before{
  display:none !important;
}

/* Empty cart */
.woocommerce-cart .cart-empty{
  font-size:16px !important;
  color:#6b7280 !important;
  text-align:center !important;
  padding:40px 0 !important;
}
.woocommerce-cart .return-to-shop .button{
  display:inline-flex !important;
  height:46px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  font-weight:700 !important;
  font-size:14px !important;
  text-decoration:none !important;
  align-items:center !important;
  margin-top:12px !important;
  border:none !important;
}

@media(max-width:640px){
  .woocommerce-cart .woocommerce{ padding:16px 14px 56px !important; }

  /* Hide desktop headers */
  .woocommerce-cart table.shop_table thead{ display:none !important; }

  /* Each product row = card */
  .woocommerce-cart table.shop_table tbody tr.woocommerce-cart-form__cart-item{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    grid-template-rows:auto auto auto !important;
    gap:0 10px !important;
    padding:16px !important;
    border-bottom:1px solid rgba(0,0,0,.07) !important;
    position:relative !important;
  }

  /* Remove button — top right corner */
  .woocommerce-cart table.shop_table .product-remove{
    grid-column:3 !important;
    grid-row:1 !important;
    display:block !important;
    padding:0 !important;
    border:none !important;
    text-align:right !important;
  }

  /* Thumbnail — left col rows 1-2 */
  .woocommerce-cart table.shop_table .product-thumbnail{
    grid-column:1 !important;
    grid-row:1 / 3 !important;
    display:block !important;
    padding:0 !important;
    border:none !important;
    align-self:center !important;
  }
  .woocommerce-cart table.shop_table .product-thumbnail img{
    width:72px !important;
    height:72px !important;
  }

  /* Product name — col 2 row 1 */
  .woocommerce-cart table.shop_table .product-name{
    grid-column:2 !important;
    grid-row:1 !important;
    display:block !important;
    padding:0 !important;
    border:none !important;
    font-size:13.5px !important;
  }
  .woocommerce-cart table.shop_table .product-name::before{ display:none !important; }

  /* Price — col 2 row 2 small */
  .woocommerce-cart table.shop_table .product-price{
    grid-column:2 !important;
    grid-row:2 !important;
    display:block !important;
    padding:3px 0 0 !important;
    border:none !important;
    font-size:12.5px !important;
    color:#9ca3af !important;
  }
  .woocommerce-cart table.shop_table .product-price::before{ content:"ราคา: " !important; }

  /* Quantity + Subtotal — full width row */
  .woocommerce-cart table.shop_table .product-quantity,
  .woocommerce-cart table.shop_table .product-subtotal{
    grid-column:1 / 4 !important;
    grid-row:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    padding:8px 0 0 !important;
    border:none !important;
    font-size:13.5px !important;
  }
  .woocommerce-cart table.shop_table .product-quantity::before{
    content:"จำนวน" !important;
    font-size:12.5px !important;
    font-weight:600 !important;
    color:#6b7280 !important;
  }
  .woocommerce-cart table.shop_table .product-subtotal::before{
    content:"รวม" !important;
    font-size:12.5px !important;
    font-weight:600 !important;
    color:#6b7280 !important;
  }
  .woocommerce-cart table.shop_table .product-quantity .qty{
    width:52px !important;
    height:36px !important;
    font-size:13px !important;
  }

  /* Actions row */
  .woocommerce-cart table.shop_table .actions{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    padding:16px !important;
    border-top:1px solid rgba(0,0,0,.07) !important;
  }
  .woocommerce-cart table.shop_table .actions .coupon{
    flex-direction:row !important;
  }
  .woocommerce-cart table.shop_table .actions .coupon #coupon_code{
    flex:1 !important;
    min-width:0 !important;
  }
  .woocommerce-cart button[name="update_cart"]{
    width:100% !important;
    float:none !important;
  }
}

/* ── Hide browser default number input spin buttons ── */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
  display:none !important;
}
input[type="number"]{
  -moz-appearance:textfield !important;
}

/* ── Cart mobile fixes ── */

/* Hide WooCommerce td::before labels on remove + thumbnail cells */
.woocommerce-cart table.shop_table .product-remove::before,
.woocommerce-cart table.shop_table .product-thumbnail::before{
  display:none !important;
  content:none !important;
}

/* Product name — left align */
.woocommerce-cart table.shop_table .product-name{
  text-align:left !important;
}

/* Coupon input — ensure visible */
.woocommerce-cart .coupon #coupon_code,
#coupon_code{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  color:#101010 !important;
  background:#fff !important;
  border:1.5px solid rgba(0,0,0,.15) !important;
}

/* Actions area — stack properly on mobile */
@media(max-width:640px){
  .woocommerce-cart table.shop_table .actions{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    padding:16px !important;
  }
  .woocommerce-cart table.shop_table .actions .coupon{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    width:100% !important;
  }
  .woocommerce-cart table.shop_table .actions .coupon #coupon_code{
    width:100% !important;
    min-width:0 !important;
  }
  .woocommerce-cart button[name="update_cart"]{
    width:100% !important;
    float:none !important;
    display:block !important;
  }
  /* Hide WC auto-generated labels on all td cells */
  .woocommerce-cart table.shop_table tbody td::before{
    font-weight:600 !important;
    color:#9ca3af !important;
    font-size:11px !important;
  }
  .woocommerce-cart table.shop_table .product-remove::before,
  .woocommerce-cart table.shop_table .product-thumbnail::before{
    display:none !important;
  }
}

/* ── Coupon input size fix ── */
.woocommerce-cart .coupon{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  width:100% !important;
  max-width:380px !important;
}
.woocommerce-cart .coupon #coupon_code{
  width:100% !important;
  height:48px !important;
  font-size:14px !important;
  padding:0 16px !important;
  border-radius:14px !important;
  border:1.5px solid rgba(0,0,0,.14) !important;
  background:#fff !important;
  color:#101010 !important;
}
.woocommerce-cart button[name="apply_coupon"]{
  width:100% !important;
  height:48px !important;
  max-width:100% !important;
}

/* ── Coupon moved into Cart totals ── */
.dl-coupon-moved{
  width:100% !important;
  max-width:100% !important;
  padding-top:16px !important;
  border-top:1px solid rgba(0,0,0,.07) !important;
}
.dl-coupon-moved #coupon_code_clone{
  width:100% !important;
  height:46px !important;
  border-radius:12px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  padding:0 14px !important;
  font-size:14px !important;
  font-family:inherit !important;
  background:#fff !important;
  color:#101010 !important;
  margin-bottom:10px !important;
  display:block !important;
}
.dl-coupon-moved [name="apply_coupon"]{
  width:100% !important;
  display:block !important;
}

/* ── Hide original coupon in cart actions row ── */
.woocommerce-cart-form .actions .coupon{
  display:none !important;
}

/* ── Force hide coupon in cart form actions — maximum specificity ── */
body.woocommerce-cart .woocommerce-cart-form table.shop_table tfoot .coupon,
body.woocommerce-cart .woocommerce-cart-form .actions .coupon,
body.woocommerce-cart .woocommerce form .coupon,
body.woocommerce-cart table.cart .coupon,
.woocommerce-page.woocommerce-cart .coupon:not(.dl-coupon-moved){
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
}

/* ── Force hide coupon in cart form — all possible locations ── */
.woocommerce-cart-form .coupon,
.woocommerce-cart-form .actions .coupon,
form.woocommerce-cart-form .coupon,
table.woocommerce-cart-form__contents .coupon,
.shop_table .actions .coupon,
.cart-collaterals .coupon,
p.coupon,
.woocommerce-cart .coupon:not(.dl-coupon-moved){
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  overflow:hidden !important;
}

/* WooCommerce page wrapper (cart, checkout, shop) */
.dl-wc-page{
  max-width:1200px;
  margin:0 auto;
  padding:40px 28px 80px;
}
@media(max-width:640px){
  .woocommerce-account .dl-wc-page{padding-left:0!important;padding-right:0!important}
}

/* ── Cart totals card (self-contained) ── */
.dl-cart-totals-card{
  background:#fff;
  border-radius:20px;
  padding:24px;
  box-shadow:0 4px 20px rgba(0,0,0,.06);
  width:100%;
  margin-top:20px;
}
.dl-cart-totals-card h2{
  font-size:20px !important;
  font-weight:800 !important;
  letter-spacing:-.03em !important;
  margin:0 0 18px !important;
}
.dl-cart-totals-card table{
  width:100% !important;
  border-collapse:collapse !important;
  border:none !important;
  background:transparent !important;
}
.dl-cart-totals-card table th{
  font-size:13px !important;
  font-weight:700 !important;
  color:#6b7280 !important;
  padding:12px 0 !important;
  border-top:none !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  text-align:left !important;
  background:transparent !important;
}
.dl-cart-totals-card table td{
  font-size:13.5px !important;
  font-weight:700 !important;
  padding:12px 0 !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  text-align:right !important;
  background:transparent !important;
}
.dl-cart-totals-card .order-total th,
.dl-cart-totals-card .order-total td{
  font-size:15px !important;
  border-bottom:none !important;
  padding-top:16px !important;
}
.dl-cart-totals-card .order-total td{
  font-size:22px !important;
  color:#E8620A !important;
}

/* Coupon inside totals */
.dl-coupon-section{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(0,0,0,.07);
}
.dl-coupon-section p{
  font-size:13px;
  font-weight:700;
  color:#6b7280;
  margin-bottom:10px;
}
.dl-coupon-section form{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.dl-coupon-section #coupon_code_totals{
  width:100% !important;
  height:46px !important;
  border:1.5px solid rgba(0,0,0,.12) !important;
  border-radius:12px !important;
  padding:0 14px !important;
  font-size:14px !important;
  font-family:inherit !important;
  background:#fff !important;
  color:#101010 !important;
  outline:none !important;
  display:block !important;
}
.dl-coupon-section button[name="apply_coupon"]{
  width:100% !important;
  height:46px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  box-shadow:0 6px 18px rgba(232,98,10,.2) !important;
}
.dl-cart-empty{
  text-align:center;
  padding:60px 20px;
  color:#6b7280;
}
.dl-btn-orange{
  display:inline-flex;
  align-items:center;
  height:46px;
  padding:0 24px;
  border-radius:999px;
  background:#E8620A;
  color:#fff;
  font-weight:700;
  text-decoration:none;
  margin-top:14px;
}

/* ════════════════════════════════════════════════════════════
   UI KIT — Marketplace / Stores / Store (เดินสายข้อมูลจริง)
   อ้างอิงดีไซน์ชุด "เว็บเรียบง่ายสมัยใหม่" — สีแบรนด์ + IBM Plex Sans Thai
   ════════════════════════════════════════════════════════════ */
.dl-num{font-family:'IBM Plex Sans','IBM Plex Sans Thai',sans-serif}

/* ── การ์ดสินค้า (ใช้ร่วม Marketplace + Store) ── */
/* Reset WC li.product chrome inside the new .dl-mk2 marketplace — .dl-uikit-card owns the frame.
   High specificity (.woocommerce .dl-mk2) to beat line ~129 default li.product padding:18px. */
.woocommerce .dl-mk2 ul.products li.product,
.dl-mk2 ul.products li.product{
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.woocommerce .dl-mk2 ul.products li.dl-uikit-card,
.dl-mk2 ul.products li.dl-uikit-card{background:#fff !important}
.dl-uikit-card{background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:18px 18px 0 0;overflow:hidden;display:flex !important;flex-direction:column;width:auto !important;float:none !important;margin:0 !important;min-width:0}
.dl-uikit-card-media{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/5 !important;flex-shrink:0;background:#fdf8ee;border-bottom:1px solid rgba(0,0,0,.06);text-decoration:none;overflow:hidden;border-radius:18px 18px 0 0}
.dl-uikit-card-media img{width:100% !important;height:100% !important;object-fit:cover !important;object-position:center;border-radius:18px 18px 0 0;margin:0}
/* Guest placeholder — warm bg + faint bottle watermark + brand logo (shared marketplace + single) */
.dl-img-ph{width:100%;height:100%;background-color:#f3ead6;background-repeat:no-repeat;background-position:center;background-size:47% auto;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E8620A' stroke-opacity='0.10' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 5h4M9 5v2.5a4 4 0 0 1-.5 1.9l-1 1.7a4 4 0 0 0-.5 1.9V19a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-6a4 4 0 0 0-.5-1.9l-1-1.7a4 4 0 0 1-.5-1.9V5'/%3E%3Cpath d='M7 14h10'/%3E%3C/svg%3E");display:flex;align-items:center;justify-content:center}
.dl-img-ph img{position:relative;width:96px!important;height:auto!important;max-width:60%;object-fit:contain!important;opacity:.92}
/* Single product: placeholder fills the media card as a cream box with larger logo */
.dl-single-media>.dl-img-ph{aspect-ratio:4/5;height:auto;border-radius:0}
.dl-single-media>.dl-img-ph img{width:190px!important;max-width:62%!important}
.dl-uikit-shot{font:500 10px ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#bdb8ad}
.dl-uikit-sale{position:absolute;top:14px;right:12px;z-index:2;font:700 14px 'IBM Plex Sans',sans-serif;letter-spacing:.04em;color:#E8620A;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.25);-webkit-backdrop-filter:blur(8px) saturate(160%);backdrop-filter:blur(8px) saturate(160%);border:1px solid rgba(255,255,255,.55);box-shadow:0 4px 14px rgba(0,0,0,.12)}
.dl-uikit-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.dl-uikit-card-title{margin:0 0 12px;font-size:15px;font-weight:600;line-height:1.32;color:#101010;letter-spacing:-.01em;text-decoration:none;display:block}
.dl-uikit-card-title:hover{color:#E8620A}
.dl-uikit-card-price-row{display:flex;align-items:baseline;gap:8px;margin-top:auto}
.dl-uikit-price{font-weight:700;font-size:20px;color:#E8620A;letter-spacing:-.02em}
.dl-uikit-price del{font-size:13px;color:#bdb8ad;font-weight:400;margin-left:4px}
.dl-uikit-price ins{text-decoration:none}
.dl-uikit-card-meta-row{margin-top:10px;padding-top:11px;border-top:1px solid rgba(0,0,0,.08);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dl-uikit-card-meta-row .dl-uikit-card-lead{margin-top:0;padding-top:0;border-top:none}
.dl-uikit-moq{font-size:10.5px;font-weight:600;color:#b45309;background:#fff4d6;padding:2px 8px;border-radius:5px;white-space:nowrap}
.dl-uikit-card-own{margin-top:10px;background:#f1efe8;color:#78716c;border-radius:8px;padding:8px;text-align:center;font-size:11.5px;font-weight:600}
.dl-uikit-card-lead{margin-top:10px;padding-top:11px;border-top:1px solid rgba(0,0,0,.08);font-size:12px;color:#78716c;letter-spacing:.01em}
.dl-uikit-card-locked{margin-top:auto;font-size:13px;color:#a8a29e}
.dl-uikit-card-loginlink{display:inline-block;margin-top:9px;font-size:13px;font-weight:600;color:#E8620A;text-decoration:none}

/* ── Marketplace: hero + layout sidebar + grid ── */
.dl-mk2{max-width:1280px;margin:0 auto;padding:48px 40px 80px;font-family:'IBM Plex Sans Thai',sans-serif}
.dl-mk2-eyebrow{font:600 12px 'IBM Plex Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#E8620A;margin-bottom:16px}
.dl-mk2 h1{margin:0 0 16px;font-size:48px;line-height:1;letter-spacing:-.045em;font-weight:700;color:#101010}
.dl-mk2-sub{margin:0;max-width:560px;font-size:16px;line-height:1.65;color:#667085}
.dl-mk2-body{display:flex;gap:52px;margin-top:48px;align-items:flex-start}
.dl-mk2-aside{flex:none;width:188px}
.dl-mk2-aside-h{font:600 12px 'IBM Plex Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#a8a29e;margin-bottom:12px}
.dl-mk2-cat{display:block;padding:9px 0;font-size:15px;font-weight:500;color:#44403c;text-decoration:none}
.dl-mk2-cat:hover{color:#E8620A}
.dl-mk2-cat.is-active{font-weight:600;color:#E8620A}
.dl-mk2-main{flex:1;min-width:0}
.dl-mk2-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:16px;flex-wrap:wrap}
.dl-mk2-count{font-size:14px;color:#78716c}
.dl-mk2-count b{color:#101010;font-weight:600}
.woocommerce .dl-mk2 ul.products,.dl-mk2 ul.products{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:24px !important;margin:0 !important;padding:0 !important;list-style:none !important}
.woocommerce .dl-mk2 ul.products:before,.woocommerce .dl-mk2 ul.products:after,.dl-mk2 ul.products:before,.dl-mk2 ul.products:after{display:none !important}
/* Sorting dropdown — align design system (h44 / radius8 / border rgba(0,0,0,.08)) */
.dl-mk2-sort form{margin:0}
.dl-mk2-sort select{
  height:44px !important;
  min-width:200px !important;
  border-radius:8px !important;
  border:1px solid rgba(0,0,0,.08) !important;
  background:#fff !important;
  padding:0 40px 0 14px !important;
  font-family:'IBM Plex Sans Thai',sans-serif !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:#101010 !important;
  cursor:pointer !important;
  line-height:44px !important;
  /* reset native appearance + custom chevron */
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  appearance:none !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23101010' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 14px center !important;
  transition:border-color .15s !important;
}
.dl-mk2-sort select:hover{border-color:rgba(0,0,0,.22) !important}
.dl-mk2-sort select:focus{
  outline:none !important;
  border-color:#E8620A !important;
  box-shadow:0 0 0 3px rgba(232,98,10,.12) !important;
}
.dl-mk2-empty{padding:80px 0;text-align:center;color:#a8a29e}

/* ── Stores directory ── */
.dl-st2{max-width:1280px;margin:0 auto;padding:48px 40px 80px;font-family:'IBM Plex Sans Thai',sans-serif}
.dl-st2-eyebrow{font:600 12px 'IBM Plex Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#E8620A;margin-bottom:16px}
.dl-st2 h1{margin:0 0 16px;font-size:48px;line-height:1;letter-spacing:-.045em;font-weight:700;color:#101010}
.dl-st2-sub{margin:0 0 44px;max-width:560px;font-size:16px;line-height:1.65;color:#667085}
.dl-st2-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dl-st2-card{display:block;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:24px;text-decoration:none;transition:border-color .15s,transform .15s}
.dl-st2-card:hover{border-color:rgba(0,0,0,.22);transform:translateY(-2px)}
.dl-st2-card-top{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.dl-st2-logo{flex:none;width:64px;height:64px;border-radius:10px;background:#f4f2ec;border:1px solid rgba(0,0,0,.07);background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.022) 0 9px,transparent 9px 18px);display:flex;align-items:center;justify-content:center;overflow:hidden}
.dl-st2-logo img{width:100%;height:100%;object-fit:cover}
.dl-st2-logo span{font:300 30px 'IBM Plex Sans',sans-serif;color:#E8620A;opacity:.55;letter-spacing:-.04em}
.dl-st2-name{font-size:18px;font-weight:700;letter-spacing:-.02em;color:#101010;margin:0 0 4px;line-height:1.2}
.dl-st2-verified{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 9px;border-radius:5px;background:#101010;color:#fff;font-size:10px;font-weight:600}
.dl-st2-cats{font-size:13px;color:#667085;margin-bottom:14px;min-height:18px}
.dl-st2-meta{display:flex;gap:8px;flex-wrap:wrap}
.dl-st2-pill{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:999px;border:1px solid rgba(0,0,0,.12);font-size:12px;font-weight:500;color:#44403c}

/* ── Store single: hero ── */
.dl-ss2{max-width:1280px;margin:0 auto;padding:40px 40px 80px;font-family:'IBM Plex Sans Thai',sans-serif}
.dl-ss2-crumb{font-size:13px;color:#a8a29e;margin-bottom:28px}
.dl-ss2-crumb a{color:#a8a29e;text-decoration:none}
.dl-ss2-crumb a:hover{color:#78716c}
.dl-ss2-hero{display:grid;grid-template-columns:300px 1fr;gap:40px;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;padding:32px}
.dl-ss2-logo{aspect-ratio:1/1;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:9px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.dl-ss2-logo img{width:100%;height:100%;object-fit:contain;padding:12px;box-sizing:border-box}
.dl-ss2-logo span{font:300 72px 'IBM Plex Sans',sans-serif;color:#E8620A;opacity:.55;letter-spacing:-.04em}
.dl-ss2-verified{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 11px;border-radius:6px;background:#101010;color:#fff;font-size:11px;font-weight:600;margin-bottom:16px}
.dl-ss2-hero h1{margin:0 0 12px;font-size:46px;line-height:1;letter-spacing:-.04em;font-weight:700;color:#101010}
.dl-ss2-hero p{margin:0 0 22px;max-width:560px;font-size:15px;line-height:1.65;color:#667085}
.dl-ss2-meta{display:flex;gap:10px;flex-wrap:wrap}
.dl-ss2-pill{display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;font-size:13px;font-weight:500;color:#44403c}
.dl-ss2-prodhead{display:flex;justify-content:space-between;align-items:center;margin:48px 0 24px}
.dl-ss2-prodhead h2{margin:0;font-size:22px;font-weight:700;letter-spacing:-.03em;color:#101010}
.woocommerce .dl-ss2 ul.products,.dl-ss2 ul.products{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:20px !important;margin:0 !important;padding:0 !important;list-style:none !important}
.woocommerce .dl-ss2 ul.products:before,.woocommerce .dl-ss2 ul.products:after,.dl-ss2 ul.products:before,.dl-ss2 ul.products:after{display:none !important}

@media (max-width:900px){
  .dl-mk2-body{flex-direction:column;gap:0;margin-top:20px}

  /* ── หมวดหมู่ → chip เลื่อนแนวนอน (sticky) ──
     .dl-mk2-aside เป็น flex item — เทคนิค left:50%/-50vw ใช้ไม่ได้
     ใช้ ::before วาดพื้นหลังทะลุออกซ้าย-ขวาแทน (ตัว element อยู่ที่เดิม) */
  .dl-mk2-aside{
    width:100%;
    position:sticky;
    top:0;
    z-index:20;
    padding:10px 0 12px;
    box-sizing:border-box;
  }
  .dl-mk2-aside::before{
    content:'';
    position:absolute;
    top:0;
    bottom:0;
    left:-100px;              /* ทะลุออกซ้าย เกิน padding container */
    right:-100px;             /* ทะลุออกขวา */
    background:#fffaf0;
    border-bottom:1px solid rgba(0,0,0,.08);
  }
  .dl-mk2-aside-h{display:none}   /* ซ่อนหัวข้อ "หมวดหมู่" ประหยัดที่ */
  .dl-mk2-aside nav{
    position:relative;            /* ยกขึ้นเหนือพื้นหลัง ::before */
    z-index:1;
    display:flex;
    gap:8px;
    flex-wrap:nowrap;             /* ไม่ขึ้นบรรทัดใหม่ */
    overflow-x:auto;
    padding:0;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .dl-mk2-aside nav::-webkit-scrollbar{display:none}
  .dl-mk2-cat{
    flex:none;
    display:flex;
    align-items:center;
    height:36px;
    padding:0 15px;
    border-radius:999px;
    border:1px solid rgba(0,0,0,.1);
    background:#fff;
    font-size:13px;
    font-weight:600;
    color:#44403c;
    white-space:nowrap;
    text-decoration:none;
  }
  .dl-mk2-cat.is-active{
    background:#101010;
    color:#FFE600;
    border-color:#101010;
  }

  /* ── toolbar: จำนวน + sorting แถวเดียวกัน ── */
  .dl-mk2-toolbar{
    display:flex;
    flex-direction:row;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    flex-wrap:nowrap;
    margin:14px 0 14px;
  }
  .dl-mk2-count{font-size:12.5px;color:#78716c;white-space:nowrap;flex:1;min-width:0}
  .dl-mk2-count .woocommerce-result-count{margin:0 !important;font-size:12.5px !important}
  .dl-mk2-sort{flex:none;width:auto !important}
  .dl-mk2-sort form,.dl-mk2-sort select{width:auto !important}
  .dl-mk2-sort select{
    height:38px !important;
    min-width:0 !important;
    max-width:170px;
    font-size:12.5px !important;
    padding:0 34px 0 12px !important;
    line-height:38px !important;
  }

  /* ── สินค้า 2 คอลัมน์ ── */
  .woocommerce .dl-mk2 ul.products,.dl-mk2 ul.products,.dl-st2-grid{grid-template-columns:repeat(2,1fr) !important;gap:12px !important}
  .dl-ss2-hero{grid-template-columns:1fr;text-align:center}
  .dl-ss2-logo{max-width:200px;margin:0 auto}
  .woocommerce .dl-ss2 ul.products,.dl-ss2 ul.products{grid-template-columns:repeat(2,1fr) !important}

  /* ── hero กระชับ ── */
  .dl-mk2{padding-top:22px !important}
  .dl-mk2 h1,.dl-st2 h1{font-size:28px;margin-bottom:8px}
  .dl-mk2-eyebrow{margin-bottom:10px;font-size:11px}
  .dl-mk2-sub{font-size:13.5px;line-height:1.55;margin-bottom:0}
}
@media (max-width:560px){
  .dl-mk2,.dl-st2,.dl-ss2{padding-left:20px;padding-right:20px}
  /* คงสินค้า 2 คอลัมน์บนจอเล็ก (เดิมบังคับ 1fr) */
  .woocommerce .dl-mk2 ul.products,.dl-mk2 ul.products,.dl-st2-grid,.woocommerce .dl-ss2 ul.products,.dl-ss2 ul.products{grid-template-columns:repeat(2,1fr) !important;gap:10px !important}
  .dl-mk2 h1{font-size:26px}
  .dl-mk2-sort select{max-width:150px}
}

/* ═══════════════════════════════════════════════════════════
   CART — Shipping calculator (Change address) + tax row + ตัวเลข
   v231: จัดสไตล์ฟอร์มเปลี่ยนที่อยู่ให้เข้า design system
   ═══════════════════════════════════════════════════════════ */

/* ลิงก์ Change address */
.woocommerce-cart .cart_totals .shipping-calculator-button{
  color:#E8620A !important;
  font-weight:600 !important;
  text-decoration:none !important;
  border-bottom:1px solid rgba(232,98,10,.35) !important;
}
.woocommerce-cart .cart_totals .shipping-calculator-button:hover{
  border-bottom-color:#E8620A !important;
}

/* กล่องฟอร์มที่ขยายออกมา */
.woocommerce-cart .shipping-calculator-form{
  margin-top:12px !important;
  padding:14px !important;
  background:#fffaf0 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
}
.woocommerce-cart .shipping-calculator-form p{
  margin:0 0 10px !important;
}

/* label */
.woocommerce-cart .shipping-calculator-form label{
  display:block !important;
  font-size:12.5px !important;
  font-weight:600 !important;
  color:#444 !important;
  margin-bottom:5px !important;
}

/* input + select + textarea — design token: 44px / radius 8 / border .14 */
.woocommerce-cart .shipping-calculator-form input.input-text,
.woocommerce-cart .shipping-calculator-form select,
.woocommerce-cart .shipping-calculator-form .select2-selection,
.woocommerce-cart .shipping-calculator-form .select2-container .select2-selection--single{
  width:100% !important;
  height:44px !important;
  min-height:44px !important;
  border:1px solid rgba(0,0,0,.14) !important;
  border-radius:8px !important;
  padding:0 14px !important;
  font-size:14px !important;
  font-family:inherit !important;
  background:#fff !important;
  color:#101010 !important;
  outline:none !important;
  box-sizing:border-box !important;
}
.woocommerce-cart .shipping-calculator-form input.input-text:focus,
.woocommerce-cart .shipping-calculator-form select:focus{
  border-color:#E8620A !important;
  box-shadow:0 0 0 3px rgba(232,98,10,.1) !important;
}

/* select2 dropdown (Country/State) ให้สูง + จัดตัวอักษรกึ่งกลางแนวตั้ง */
.woocommerce-cart .shipping-calculator-form .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:42px !important;
  padding-left:0 !important;
  color:#101010 !important;
}
.woocommerce-cart .shipping-calculator-form .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:42px !important;
}

/* ปุ่ม Update — ส้มกลมมน (แบบ A) */
.woocommerce-cart .shipping-calculator-form button[name="calc_shipping"],
.woocommerce-cart .shipping-calculator-form .button{
  width:100% !important;
  height:44px !important;
  border-radius:999px !important;
  background:#E8620A !important;
  color:#fff !important;
  border:none !important;
  font-size:14px !important;
  font-weight:700 !important;
  font-family:inherit !important;
  cursor:pointer !important;
  margin-top:6px !important;
  transition:background .15s !important;
}
.woocommerce-cart .shipping-calculator-form button[name="calc_shipping"]:hover,
.woocommerce-cart .shipping-calculator-form .button:hover{
  background:#c4500a !important;
}

/* แถว VAT/Tax ใน cart totals — ฟอนต์ตัวเลขให้เหมือนแถวอื่น */
.woocommerce-cart .cart_totals .tax-rate th,
.woocommerce-cart .cart_totals .tax-total th{
  font-weight:700 !important;
  color:#6b7280 !important;
}

/* ฟอนต์ตัวเลขใน cart totals + รายการ (ตามดีไซน์ .dl-num = IBM Plex Sans) */
.woocommerce-cart .cart_totals .amount,
.woocommerce-cart .cart_totals bdi,
.woocommerce-cart table.shop_table .amount,
.woocommerce-cart table.shop_table bdi{
  font-family:'IBM Plex Sans','IBM Plex Sans Thai',sans-serif !important;
  font-feature-settings:'tnum' 1 !important;
}

/* ── CART totals ลำดับใหม่ v232: กลุ่มการจัดส่ง + ฟรีสีเขียว ── */
.woocommerce-cart .dl-cart-shipaddr{
  margin-bottom:14px !important;
  padding-bottom:4px !important;
}
.woocommerce-cart .cart_totals .dl-ship-group-head th{
  font-size:11.5px !important;
  font-weight:700 !important;
  color:#aaa !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
  padding:10px 0 4px !important;
  border-top:1px solid #eee !important;
  text-align:left !important;
}
.woocommerce-cart .cart_totals tr.dl-ship-vendor th{
  font-weight:500 !important;
  color:#666 !important;
  font-size:13px !important;
  padding:5px 0 !important;
  border:none !important;
}
.woocommerce-cart .cart_totals tr.dl-ship-vendor td{
  text-align:right !important;
  font-size:13px !important;
  padding:5px 0 !important;
  border:none !important;
}
.woocommerce-cart .cart_totals tr.dl-ship-vendor:not(.dl-ship-vendor-first) th,
.woocommerce-cart .cart_totals tr.dl-ship-vendor:not(.dl-ship-vendor-first) td{
  border-top:1px dashed #f0f0f0 !important;
}
.woocommerce-cart .cart_totals .dl-ship-free{
  color:#1D9E75 !important;
  font-weight:600 !important;
}
.woocommerce-cart .cart_totals tr.dl-shipping-total th{
  font-weight:500 !important;
  color:#888 !important;
}
