/* ==========================================================
   Store.Toolsheep V43 — Visual System Polish
   Final design-system layer after V42.
   Goal: one visual language across the entire homepage.
   ========================================================== */

/* ---------- Design tokens ---------- */
.stsh-v2-root,
.stsh-v23-flash,
.stsh-v27-featured{
  --stsh-ink:#14212B;
  --stsh-text:#2D3B45;
  --stsh-muted:#71818B;
  --stsh-blue:#08A9D7;
  --stsh-blue-dark:#078CB3;
  --stsh-red:#E53935;
  --stsh-border:#E2EBF0;
  --stsh-surface:#FFFFFF;
  --stsh-surface-soft:#F7FAFB;
  --stsh-r-sm:10px;
  --stsh-r-md:14px;
  --stsh-shadow:0 6px 18px rgba(20,33,43,.055);
  font-family:'Prompt','Kanit',sans-serif!important;
  color:var(--stsh-ink);
}

/* ---------- Typography hierarchy ---------- */
.stsh-v2-root .stsh-v2-title-row h2,
.stsh-v2-root .stsh-v2-solution-module .stsh-v2-title-row h2,
.stsh-v23-flash .stsh-v23-titleline h2,
.stsh-v27-featured .stsh-v27-title h2{
  margin:0!important;
  color:var(--stsh-ink)!important;
  font-family:'Prompt','Kanit',sans-serif!important;
  font-size:21px!important;
  line-height:1.3!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
}
.stsh-v27-featured .stsh-v27-title small{
  margin-bottom:4px!important;
  color:var(--stsh-blue-dark)!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.07em!important;
}
.stsh-v2-root .stsh-v2-more,
.stsh-v23-flash .stsh-v23-all,
.stsh-v27-featured .stsh-v27-more{
  color:var(--stsh-blue-dark)!important;
  font:600 11px/1.3 'Prompt','Kanit',sans-serif!important;
  text-decoration:none!important;
}

/* ---------- Category icon system ---------- */
.stsh-v2-root .stsh-v5-cat{
  color:var(--stsh-ink)!important;
}
.stsh-v2-root .stsh-v5-cat-icon{
  width:56px!important;
  height:56px!important;
  flex:0 0 56px!important;
  border-radius:14px!important;
  font-size:21px!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v5-cat strong{
  color:var(--stsh-ink)!important;
  font:600 12px/1.4 'Prompt','Kanit',sans-serif!important;
  letter-spacing:0!important;
}

/* ---------- Product card system: Flash + Featured = same component ---------- */
.stsh-v2-root .stsh-v23-products ul.products > li.product,
.stsh-v2-root .stsh-v27-panel ul.products > li.product{
  padding:0 0 12px!important;
  border:1px solid var(--stsh-border)!important;
  border-radius:12px!important;
  background:var(--stsh-surface)!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transition:border-color .16s ease,box-shadow .16s ease!important;
}
.stsh-v2-root .stsh-v23-products ul.products > li.product:hover,
.stsh-v2-root .stsh-v27-panel ul.products > li.product:hover{
  transform:none!important;
  border-color:#C6E8F1!important;
  box-shadow:var(--stsh-shadow)!important;
}
.stsh-v2-root .stsh-v23-products ul.products > li.product img,
.stsh-v2-root .stsh-v27-panel ul.products > li.product img{
  width:100%!important;
  height:148px!important;
  margin:0 0 10px!important;
  padding:12px!important;
  object-fit:contain!important;
  background:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v23-products .woocommerce-loop-product__title,
.stsh-v2-root .stsh-v27-panel .woocommerce-loop-product__title{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  min-height:42px!important;
  height:42px!important;
  margin:0 12px 7px!important;
  padding:0!important;
  color:var(--stsh-text)!important;
  font:500 11.5px/1.55 'Prompt','Kanit',sans-serif!important;
  letter-spacing:0!important;
}
.stsh-v2-root .stsh-v23-products .price,
.stsh-v2-root .stsh-v27-panel .price{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  min-height:24px!important;
  margin:0 12px 10px!important;
  color:var(--stsh-red)!important;
  font:700 13.5px/1.35 'Prompt','Kanit',sans-serif!important;
}
.stsh-v2-root .stsh-v23-products li.product > .button,
.stsh-v2-root .stsh-v23-products li.product > a.button,
.stsh-v2-root .stsh-v27-panel li.product > .button,
.stsh-v2-root .stsh-v27-panel li.product > a.button{
  min-height:34px!important;
  height:34px!important;
  margin:auto 12px 0!important;
  padding:0 10px!important;
  border:1px solid #C9EAF3!important;
  border-radius:8px!important;
  background:#F3FBFE!important;
  color:var(--stsh-blue-dark)!important;
  box-shadow:none!important;
  font:600 10.5px/1 'Prompt','Kanit',sans-serif!important;
}
.stsh-v2-root .stsh-v23-products li.product > .button:hover,
.stsh-v2-root .stsh-v23-products li.product > a.button:hover,
.stsh-v2-root .stsh-v27-panel li.product > .button:hover,
.stsh-v2-root .stsh-v27-panel li.product > a.button:hover{
  background:#EAF9FD!important;
  border-color:#9DDAEA!important;
  color:var(--stsh-blue-dark)!important;
  transform:none!important;
}
.stsh-v2-root .stsh-v23-products ul.products li.product::before,
.stsh-v2-root .stsh-v27-panel ul.products li.product .onsale{
  font-family:'Prompt','Kanit',sans-serif!important;
  font-size:8px!important;
  font-weight:700!important;
  border-radius:5px!important;
}

/* ---------- Flash header normalization ---------- */
.stsh-v23-flash .stsh-v23-titleline{gap:5px!important;}
.stsh-v23-flash .stsh-v23-bolt{
  font-size:18px!important;
  margin-right:4px!important;
  transform:none!important;
}
.stsh-v23-flash .stsh-v23-timer{
  min-height:38px!important;
  padding:4px 7px!important;
  gap:4px!important;
  border:1px solid #D7E9F0!important;
  border-radius:10px!important;
  background:#F8FCFE!important;
}
.stsh-v23-flash .stsh-v23-time{
  width:40px!important;
  height:30px!important;
  border-radius:7px!important;
}
.stsh-v23-flash .stsh-v23-time b{font-size:14px!important;}
.stsh-v23-flash .stsh-v23-time small{font-size:7px!important;}

/* ---------- Brand cards: same scale and density ---------- */
.stsh-v2-root .stsh-v24-brand-card{
  min-height:96px!important;
  padding:14px 16px!important;
  gap:14px!important;
  border:1px solid var(--stsh-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v24-brand-card:hover{
  transform:none!important;
  border-color:#C6E8F1!important;
  box-shadow:var(--stsh-shadow)!important;
}
.stsh-v2-root .stsh-v24-brand-card::after{display:none!important;}
.stsh-v2-root .stsh-v24-brand-media{
  width:72px!important;
  height:56px!important;
  flex:0 0 72px!important;
}
.stsh-v2-root .stsh-v24-brand-media img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
}
.stsh-v2-root .stsh-v24-brand-copy{gap:4px!important;}
.stsh-v2-root .stsh-v24-brand-copy strong{
  color:var(--stsh-ink)!important;
  font:700 13.5px/1.25 'Prompt','Kanit',sans-serif!important;
  letter-spacing:0!important;
}
.stsh-v2-root .stsh-v24-brand-copy small{
  color:var(--stsh-muted)!important;
  font:400 9.5px/1.4 'Prompt','Kanit',sans-serif!important;
}

/* ---------- SOLUTION REDESIGN: category tiles, not information cards ---------- */
.stsh-v2-root .stsh-v26-solution-grid{
  align-items:stretch!important;
}
.stsh-v2-root .stsh-v26-solution-grid > .stsh-v26-solution-card{
  min-height:170px!important;
  padding:20px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-align:center!important;
  border:1px solid var(--stsh-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
  color:var(--stsh-ink)!important;
}
.stsh-v2-root .stsh-v26-solution-grid > .stsh-v26-solution-card:hover{
  transform:none!important;
  border-color:#C6E8F1!important;
  background:#FCFEFF!important;
  box-shadow:var(--stsh-shadow)!important;
}
.stsh-v2-root .stsh-v26-solution-icon{
  width:56px!important;
  height:56px!important;
  flex:0 0 56px!important;
  margin:0 0 14px!important;
  border-radius:14px!important;
  font-size:20px!important;
}
/* Remove redundant English eyebrow: it was the biggest source of visual noise. */
.stsh-v2-root .stsh-v26-solution-copy small{display:none!important;}
.stsh-v2-root .stsh-v26-solution-copy{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
.stsh-v2-root .stsh-v26-solution-copy strong{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  width:100%!important;
  min-height:40px!important;
  margin:0 0 6px!important;
  color:var(--stsh-ink)!important;
  text-align:center!important;
  font:700 12.5px/1.45 'Prompt','Kanit',sans-serif!important;
  letter-spacing:0!important;
}
.stsh-v2-root .stsh-v26-solution-copy p{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:140px!important;
  min-height:30px!important;
  margin:0!important;
  color:var(--stsh-muted)!important;
  text-align:center!important;
  font:400 9.5px/1.45 'Prompt','Kanit',sans-serif!important;
}
/* Whole card is clickable; the extra arrow only adds noise. */
.stsh-v2-root .stsh-v26-solution-arrow{display:none!important;}

/* ---------- Bottom: balanced B2B + Assisted Purchase ---------- */
.stsh-v2-root .stsh-v26-b2b-box,
.stsh-v2-root .stsh-v26-assist-box,
.stsh-v2-root .stsh-v28-b2b-box,
.stsh-v2-root .stsh-v28-assist-box{
  min-height:204px!important;
  padding:24px!important;
  border:1px solid var(--stsh-border)!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v26-box-head,
.stsh-v2-root .stsh-v26-assist-box{
  align-items:center!important;
}
.stsh-v2-root .stsh-v26-box-head > span,
.stsh-v2-root .stsh-v26-assist-icon{
  width:48px!important;
  height:48px!important;
  flex:0 0 48px!important;
  border-radius:12px!important;
  font-size:18px!important;
}
.stsh-v2-root .stsh-v26-box-head small,
.stsh-v2-root .stsh-v26-assist-copy > small{
  margin-bottom:4px!important;
  color:var(--stsh-blue-dark)!important;
  font:700 8px/1.2 'Prompt','Kanit',sans-serif!important;
  letter-spacing:.06em!important;
}
.stsh-v2-root .stsh-v26-box-head strong,
.stsh-v2-root .stsh-v26-assist-copy h2{
  margin:0!important;
  color:var(--stsh-ink)!important;
  font:700 16px/1.35 'Prompt','Kanit',sans-serif!important;
  letter-spacing:-.01em!important;
}
.stsh-v2-root .stsh-v26-box-head p,
.stsh-v2-root .stsh-v26-assist-copy p{
  margin:5px 0 0!important;
  color:var(--stsh-muted)!important;
  font:400 10.5px/1.5 'Prompt','Kanit',sans-serif!important;
}
.stsh-v2-root .stsh-v26-b2b-benefits{
  gap:8px!important;
  margin:18px 0 14px!important;
}
.stsh-v2-root .stsh-v26-b2b-benefits span{
  min-height:30px!important;
  padding:7px 10px!important;
  border-radius:8px!important;
  background:#F7FAFB!important;
  color:#42545F!important;
  font:600 9.5px/1 'Prompt','Kanit',sans-serif!important;
}
.stsh-v2-root .stsh-v26-contact-grid{gap:8px!important;}
.stsh-v2-root .stsh-v26-contact{
  min-height:56px!important;
  padding:9px 11px!important;
  gap:9px!important;
  border:1px solid var(--stsh-border)!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v26-contact:hover{
  transform:none!important;
  border-color:#C6E8F1!important;
  box-shadow:none!important;
}
.stsh-v2-root .stsh-v26-contact > i{
  width:22px!important;
  font-size:17px!important;
}
.stsh-v2-root .stsh-v26-contact small{
  color:#82919A!important;
  font:700 7.5px/1.1 'Prompt','Kanit',sans-serif!important;
}
.stsh-v2-root .stsh-v26-contact strong{
  margin-top:3px!important;
  color:var(--stsh-ink)!important;
  font:600 10px/1.2 'Prompt','Kanit',sans-serif!important;
}

/* ---------- Tabs: clearer but quieter ---------- */
.stsh-v27-featured .stsh-v27-tabs{
  padding:4px!important;
  gap:2px!important;
  border-radius:10px!important;
  background:#F2F5F7!important;
}
.stsh-v27-featured .stsh-v27-tabs button{
  min-height:34px!important;
  min-width:72px!important;
  padding:0 13px!important;
  border-radius:7px!important;
  color:#5D6F7A!important;
  font:600 11px/1 'Prompt','Kanit',sans-serif!important;
  box-shadow:none!important;
}
.stsh-v27-featured .stsh-v27-tabs button.is-active{
  background:#fff!important;
  color:var(--stsh-blue-dark)!important;
  box-shadow:0 1px 4px rgba(20,33,43,.07)!important;
}

/* ---------- Tablet ---------- */
@media (min-width:768px) and (max-width:1024px){
  .stsh-v2-root .stsh-v2-title-row h2,
  .stsh-v2-root .stsh-v2-solution-module .stsh-v2-title-row h2,
  .stsh-v23-flash .stsh-v23-titleline h2,
  .stsh-v27-featured .stsh-v27-title h2{font-size:19px!important;}

  .stsh-v2-root .stsh-v26-solution-grid > .stsh-v26-solution-card{
    min-height:162px!important;
    padding:18px 12px!important;
  }
  .stsh-v2-root .stsh-v26-solution-icon{
    width:52px!important;height:52px!important;flex-basis:52px!important;
  }
}

/* ---------- Mobile ---------- */
@media (max-width:767px){
  .stsh-v2-root .stsh-v2-title-row h2,
  .stsh-v2-root .stsh-v2-solution-module .stsh-v2-title-row h2,
  .stsh-v23-flash .stsh-v23-titleline h2,
  .stsh-v27-featured .stsh-v27-title h2{
    font-size:17px!important;
    line-height:1.3!important;
  }
  .stsh-v2-root .stsh-v2-more,
  .stsh-v23-flash .stsh-v23-all,
  .stsh-v27-featured .stsh-v27-more{font-size:10px!important;}

  .stsh-v2-root .stsh-v23-products ul.products > li.product img,
  .stsh-v2-root .stsh-v27-panel ul.products > li.product img{
    height:132px!important;
    padding:10px!important;
  }
  .stsh-v2-root .stsh-v23-products .woocommerce-loop-product__title,
  .stsh-v2-root .stsh-v27-panel .woocommerce-loop-product__title{
    min-height:38px!important;
    height:38px!important;
    margin:0 10px 6px!important;
    font-size:10.5px!important;
  }
  .stsh-v2-root .stsh-v23-products .price,
  .stsh-v2-root .stsh-v27-panel .price{
    margin:0 10px 8px!important;
    font-size:12px!important;
  }
  .stsh-v2-root .stsh-v23-products li.product > .button,
  .stsh-v2-root .stsh-v27-panel li.product > .button{
    margin:auto 10px 0!important;
    min-height:32px!important;
    height:32px!important;
    font-size:9.5px!important;
  }

  .stsh-v2-root .stsh-v26-solution-grid > .stsh-v26-solution-card{
    flex:0 0 72%!important;
    min-width:72%!important;
    max-width:72%!important;
    min-height:154px!important;
    padding:16px 12px!important;
  }
  .stsh-v2-root .stsh-v26-solution-icon{
    width:50px!important;height:50px!important;flex-basis:50px!important;margin-bottom:12px!important;
  }
  .stsh-v2-root .stsh-v26-solution-copy strong{
    min-height:auto!important;
    font-size:12px!important;
  }
  .stsh-v2-root .stsh-v26-solution-copy p{
    min-height:auto!important;
    max-width:180px!important;
    font-size:9.5px!important;
  }

  .stsh-v2-root .stsh-v26-b2b-box,
  .stsh-v2-root .stsh-v26-assist-box,
  .stsh-v2-root .stsh-v28-b2b-box,
  .stsh-v2-root .stsh-v28-assist-box{
    min-height:0!important;
    padding:18px!important;
  }
  .stsh-v2-root .stsh-v26-box-head strong,
  .stsh-v2-root .stsh-v26-assist-copy h2{font-size:15px!important;}
}
