/* ==========================================================
   TAM TAM STREET FUTURE — DOKAN PUBLIC UI
   White-tech layer for vendor storefronts and vendor content
   on single product pages. Loaded after legacy theme CSS.
   ========================================================== */

/* ---------- Shared Dokan public reset ---------- */
body.tts-site-white.dokan-store,
body.tts-site-white.dokan-store-page,
body.tts-site-white.tts-future-dokan-store {
  background: var(--tts-canvas, #f5f5f3) !important;
  color: var(--tts-ink, #0b0b0b) !important;
}

body.tts-site-white.dokan-store *,
body.tts-site-white.dokan-store-page *,
body.tts-site-white.tts-future-dokan-store * {
  box-sizing: border-box;
}

body.tts-site-white.dokan-store main,
body.tts-site-white.dokan-store-page main,
body.tts-site-white.tts-future-dokan-store main {
  background: var(--tts-canvas, #f5f5f3) !important;
  color: var(--tts-ink, #0b0b0b) !important;
}

/* ---------- Store page: full-width clean archive ---------- */
body.tts-future-dokan-store .dokan-store-wrap,
body.tts-future-dokan-store .dokan-store-wrap.layout-left,
body.tts-future-dokan-store .dokan-store-wrap.layout-right,
body.tts-future-dokan-store .dokan-store-page-wrap,
body.tts-future-dokan-store .dokan-single-store {
  width: min(var(--tts-container, 1440px), calc(100% - (var(--tts-gutter, 32px) * 2))) !important;
  max-width: var(--tts-container, 1440px) !important;
  margin: 0 auto !important;
  padding: clamp(46px, 6vw, 96px) 0 clamp(76px, 9vw, 140px) !important;
  display: block !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  overflow: visible !important;
}

/* The old sidebar is intentionally removed: store information lives in the hero. */
body.tts-future-dokan-store #dokan-secondary,
body.tts-future-dokan-store .dokan-store-sidebar {
  display: none !important;
}

body.tts-future-dokan-store #dokan-primary,
body.tts-future-dokan-store #dokan-primary.dokan-single-store,
body.tts-future-dokan-store .dokan-single-store {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
}

/* ---------- Vendor hero/profile ---------- */
body.tts-future-dokan-store .profile-frame,
body.tts-future-dokan-store .dokan-store-header,
body.tts-future-dokan-store .dokan-store-info,
body.tts-future-dokan-store .profile-info-box,
body.tts-future-dokan-store .profile-info-summery-wrapper {
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.tts-future-dokan-store .profile-frame {
  margin: 0 0 clamp(28px, 4vw, 54px) !important;
  border: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  background: #fff !important;
  overflow: hidden !important;
}

body.tts-future-dokan-store .profile-info-box {
  min-height: clamp(220px, 31vw, 430px) !important;
  background-color: #e9e9e6 !important;
  background-size: cover !important;
  background-position: center !important;
}

body.tts-future-dokan-store .profile-info-summery-wrapper {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  background: #fff !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border-top: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  padding: clamp(20px, 3vw, 34px) !important;
}

body.tts-future-dokan-store .profile-info-summery,
body.tts-future-dokan-store .profile-info,
body.tts-future-dokan-store .dokan-store-info {
  color: var(--tts-ink, #0b0b0b) !important;
  background: transparent !important;
}

body.tts-future-dokan-store .profile-info-head,
body.tts-future-dokan-store .profile-img {
  min-width: 0 !important;
}

body.tts-future-dokan-store .profile-img img,
body.tts-future-dokan-store .dokan-store-header img {
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.tts-future-dokan-store .store-name,
body.tts-future-dokan-store .seller-name,
body.tts-future-dokan-store .dokan-store-info h1,
body.tts-future-dokan-store .dokan-store-info h2,
body.tts-future-dokan-store .profile-info h1,
body.tts-future-dokan-store .profile-info h2 {
  color: var(--tts-ink, #0b0b0b) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.8rem, 4vw, 4rem) !important;
  line-height: .98 !important;
  font-weight: 450 !important;
  letter-spacing: -.045em !important;
  text-shadow: none !important;
}

body.tts-future-dokan-store .dokan-store-info p,
body.tts-future-dokan-store .dokan-store-info span,
body.tts-future-dokan-store .dokan-store-info li,
body.tts-future-dokan-store .profile-info p,
body.tts-future-dokan-store .profile-info span,
body.tts-future-dokan-store .seller-rating,
body.tts-future-dokan-store .store-address {
  color: var(--tts-ink-2, #343434) !important;
  text-shadow: none !important;
  line-height: 1.55 !important;
}

/* ---------- Store navigation ---------- */
body.tts-future-dokan-store .dokan-store-tabs,
body.tts-future-dokan-store ul.dokan-list-inline {
  width: 100% !important;
  margin: 0 0 clamp(28px, 4vw, 48px) !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-bottom: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow-x: auto !important;
  scrollbar-width: none;
}
body.tts-future-dokan-store .dokan-store-tabs::-webkit-scrollbar,
body.tts-future-dokan-store ul.dokan-list-inline::-webkit-scrollbar { display: none; }

body.tts-future-dokan-store .dokan-store-tabs ul,
body.tts-future-dokan-store ul.dokan-list-inline {
  display: flex !important;
  flex-wrap: nowrap !important;
  width: max-content !important;
  min-width: 100% !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.tts-future-dokan-store .dokan-store-tabs li,
body.tts-future-dokan-store ul.dokan-list-inline li {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.tts-future-dokan-store .dokan-store-tabs li a,
body.tts-future-dokan-store ul.dokan-list-inline li a {
  display: flex !important;
  align-items: center !important;
  min-height: 58px !important;
  padding: 0 24px !important;
  background: transparent !important;
  color: var(--tts-muted, #7b7b76) !important;
  border: 0 !important;
  border-right: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  font: 500 .7rem/1 Inter, system-ui, sans-serif !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

body.tts-future-dokan-store .dokan-store-tabs li.active a,
body.tts-future-dokan-store .dokan-store-tabs li a:hover,
body.tts-future-dokan-store ul.dokan-list-inline li a:hover {
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
}

/* ---------- Store filters ---------- */
body.tts-future-dokan-store .dokan-store-products-filter-area,
body.tts-future-dokan-store .dokan-store-products-filter,
body.tts-future-dokan-store form.dokan-store-products-ordeby,
body.tts-future-dokan-store .woocommerce-ordering {
  width: 100% !important;
  margin: 0 0 34px !important;
  float: none !important;
}

body.tts-future-dokan-store .dokan-store-products-filter-area {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: stretch !important;
  gap: 8px !important;
}

body.tts-future-dokan-store input[type="search"],
body.tts-future-dokan-store .dokan-store-products-filter-area input[type="text"],
body.tts-future-dokan-store select,
body.tts-future-dokan-store .woocommerce-ordering select {
  width: 100% !important;
  min-height: 48px !important;
  background: #fff !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-radius: 999px !important;
  padding: 0 18px !important;
  box-shadow: none !important;
}

/* ---------- Store product grid ---------- */
body.tts-future-dokan-store .seller-items ul.products,
body.tts-future-dokan-store ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 44px 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.tts-future-dokan-store ul.products li.product,
body.tts-future-dokan-store ul.products li.product:hover {
  width: auto !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
  overflow: visible !important;
}

body.tts-future-dokan-store ul.products li.product img,
body.tts-future-dokan-store .tts-product-card__visual img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  padding: clamp(16px, 2.4vw, 38px) !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

body.tts-future-dokan-store ul.products li.product .woocommerce-loop-product__title,
body.tts-future-dokan-store ul.products li.product .woocommerce-loop-product__title a,
body.tts-future-dokan-store ul.products li.product h2,
body.tts-future-dokan-store ul.products li.product h2 a,
body.tts-future-dokan-store ul.products li.product h3,
body.tts-future-dokan-store ul.products li.product h3 a,
body.tts-future-dokan-store ul.products li.product .price,
body.tts-future-dokan-store ul.products li.product .price * {
  color: var(--tts-ink, #0b0b0b) !important;
  background: transparent !important;
  text-shadow: none !important;
}

/* ---------- Public Dokan buttons: black/white, no movement ---------- */
body.tts-site-white .dokan-btn,
body.tts-site-white .dokan-btn-theme,
body.tts-site-white .dokan-store-support-btn,
body.tts-site-white .dokan-store-contact .dokan-btn,
body.tts-site-white .dokan-product-contact .dokan-btn,
body.tts-site-white a.dokan-btn,
body.tts-site-white button.dokan-btn {
  background: var(--tts-ink, #0b0b0b) !important;
  background-image: none !important;
  color: #fff !important;
  border: 1px solid var(--tts-ink, #0b0b0b) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
}

body.tts-site-white .dokan-btn:hover,
body.tts-site-white .dokan-btn-theme:hover,
body.tts-site-white .dokan-store-support-btn:hover,
body.tts-site-white a.dokan-btn:hover,
body.tts-site-white button.dokan-btn:hover {
  background: #252525 !important;
  color: #fff !important;
  transform: none !important;
}

body.tts-site-white .dokan-btn *,
body.tts-site-white .dokan-btn-theme *,
body.tts-site-white .dokan-store-support-btn * {
  color: inherit !important;
}

/* ==========================================================
   SINGLE PRODUCT — DOKAN/VENDOR CONTENT
   ========================================================== */
body.tts-future-product .tt-light-seller-box {
  display: grid !important;
  grid-template-columns: auto minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 8px 14px !important;
  margin: 26px 0 0 !important;
  padding: 18px 0 !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 0 !important;
  border-top: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-bottom: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product .tt-light-seller-box__label,
body.tts-future-product .tt-light-seller-box__name,
body.tts-future-product .tt-light-seller-box__link {
  color: var(--tts-ink, #0b0b0b) !important;
  background: transparent !important;
  text-shadow: none !important;
}
body.tts-future-product .tt-light-seller-box__label {
  color: var(--tts-muted, #7b7b76) !important;
  font-size: .62rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}
body.tts-future-product .tt-light-seller-box__link {
  justify-self: end !important;
  margin: 0 !important;
  font-size: .68rem !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
}

/* Vendor blocks injected by Dokan/plugins on the product page. */
body.tts-future-product .dokan-vendor-info-wrap,
body.tts-future-product .dokan-vendor-info,
body.tts-future-product .dokan-seller-info,
body.tts-future-product .dokan-store-info,
body.tts-future-product .seller-info,
body.tts-future-product .dokan-store-contact,
body.tts-future-product .dokan-product-contact {
  width: 100% !important;
  max-width: 100% !important;
  background: #fff !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

body.tts-future-product .dokan-vendor-info-wrap *,
body.tts-future-product .dokan-vendor-info *,
body.tts-future-product .dokan-seller-info *,
body.tts-future-product .dokan-store-info *,
body.tts-future-product .seller-info * {
  color: var(--tts-ink, #0b0b0b) !important;
  text-shadow: none !important;
}

/* Testimony: explicit light tokens so legacy dark CSS cannot leak through. */
body.tts-future-product .tt-testimonianza {
  width: 100% !important;
  max-width: none !important;
  margin: clamp(70px, 9vw, 140px) 0 0 !important;
  padding: 36px 0 0 !important;
  border-top: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
}

body.tts-future-product .tt-testimonianza__title {
  grid-column: 1 / -1 !important;
  margin: 0 0 clamp(32px, 5vw, 64px) !important;
  color: var(--tts-ink, #0b0b0b) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(2rem, 4.4vw, 4.8rem) !important;
  line-height: .98 !important;
  font-weight: 450 !important;
  letter-spacing: -.05em !important;
  text-shadow: none !important;
}

body.tts-future-product .tt-testimonianza__block {
  min-width: 0 !important;
  margin: 0 !important;
}
body.tts-future-product .tt-testimonianza__label {
  margin: 0 0 12px !important;
  color: var(--tts-ink, #0b0b0b) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: .68rem !important;
  font-weight: 500 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}
body.tts-future-product .tt-testimonianza__text {
  max-width: 62ch !important;
  margin: 0 !important;
  color: var(--tts-ink-2, #343434) !important;
  font: 400 clamp(.95rem, 1.1vw, 1.08rem)/1.65 Inter, system-ui, sans-serif !important;
  text-shadow: none !important;
}

body.tts-future-product .tt-testimonianza__meta {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 0 !important;
  margin: clamp(34px, 5vw, 68px) 0 0 !important;
  padding: 0 !important;
  background: #fff !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product .tt-testimonianza__meta-item {
  min-width: 0 !important;
  padding: 22px 24px !important;
  border-right: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
}
body.tts-future-product .tt-testimonianza__meta-item:last-child { border-right: 0 !important; }
body.tts-future-product .tt-testimonianza__meta-item dt {
  margin: 0 0 7px !important;
  color: var(--tts-muted, #7b7b76) !important;
  font: 500 .61rem/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}
body.tts-future-product .tt-testimonianza__meta-item dd {
  margin: 0 !important;
  color: var(--tts-ink, #0b0b0b) !important;
  font: 500 .88rem/1.45 Inter, system-ui, sans-serif !important;
  overflow-wrap: anywhere !important;
}

/* More seller products: remove old black banner/card treatment. */
body.tts-future-product .tt-more-products {
  clear: both !important;
  width: 100% !important;
  max-width: none !important;
  margin: clamp(70px, 9vw, 140px) 0 0 !important;
  padding: 36px 0 0 !important;
  border-top: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
}
body.tts-future-product .tt-more-products__head {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 34px !important;
  padding: 0 !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product .tt-more-products__title {
  margin: 0 !important;
  color: var(--tts-ink, #0b0b0b) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.55rem, 3.2vw, 3.3rem) !important;
  line-height: 1 !important;
  font-weight: 450 !important;
  letter-spacing: -.045em !important;
  text-shadow: none !important;
}
body.tts-future-product .tt-more-products__link {
  flex: 0 0 auto !important;
  color: var(--tts-ink, #0b0b0b) !important;
  font: 500 .66rem/1 Inter, system-ui, sans-serif !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  border-bottom: 1px solid var(--tts-line-strong, rgba(11,11,11,.22)) !important;
  padding: 0 0 4px !important;
  background: transparent !important;
}

body.tts-future-product .tt-more-products__grid,
body.tts-future-product ul.tt-more-products__grid.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 44px 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.tts-future-product .tt-more-products__grid > li.product,
body.tts-future-product ul.tt-more-products__grid.products > li.product,
body.tts-future-product .tt-more-products__grid > li.product:hover {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

body.tts-future-product .tt-more-products .tts-product-card__visual {
  aspect-ratio: 1 / 1 !important;
  background: #e9e9e6 !important;
}
body.tts-future-product .tt-more-products .tts-product-card__visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: clamp(18px, 3vw, 42px) !important;
  border: 0 !important;
  background: transparent !important;
  transform: none !important;
  transition: none !important;
}
body.tts-future-product .tt-more-products .tts-product-card__info,
body.tts-future-product .tt-more-products .tts-product-card__info * {
  background: transparent !important;
  text-shadow: none !important;
}
body.tts-future-product .tt-more-products .woocommerce-loop-product__title,
body.tts-future-product .tt-more-products .woocommerce-loop-product__title a,
body.tts-future-product .tt-more-products .price,
body.tts-future-product .tt-more-products .price * {
  color: var(--tts-ink, #0b0b0b) !important;
}
body.tts-future-product .tt-more-products .tts-product-card__category,
body.tts-future-product .tt-more-products .tts-product-card__category a {
  color: var(--tts-muted, #7b7b76) !important;
}

/* Global Dokan public motion lock. */
body.tts-site-white .dokan-store-wrap [class*="card"],
body.tts-site-white .dokan-store-wrap ul.products li.product,
body.tts-site-white .tt-more-products [class*="card"],
body.tts-site-white .tt-more-products li.product {
  animation: none !important;
  transition: none !important;
}
body.tts-site-white .dokan-store-wrap [class*="card"]:hover,
body.tts-site-white .dokan-store-wrap ul.products li.product:hover,
body.tts-site-white .tt-more-products [class*="card"]:hover,
body.tts-site-white .tt-more-products li.product:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  body.tts-future-dokan-store .seller-items ul.products,
  body.tts-future-dokan-store ul.products {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  }
  body.tts-future-product .tt-more-products__grid,
  body.tts-future-product ul.tt-more-products__grid.products {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width: 820px) {
  body.tts-future-dokan-store .seller-items ul.products,
  body.tts-future-dokan-store ul.products {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
  body.tts-future-product .tt-testimonianza {
    display: block !important;
  }
  body.tts-future-product .tt-testimonianza__block + .tt-testimonianza__block {
    margin-top: 34px !important;
  }
  body.tts-future-product .tt-testimonianza__meta {
    grid-template-columns: 1fr !important;
  }
  body.tts-future-product .tt-testimonianza__meta-item {
    border-right: 0 !important;
    border-bottom: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  }
  body.tts-future-product .tt-testimonianza__meta-item:last-child { border-bottom: 0 !important; }
}

@media (max-width: 640px) {
  body.tts-future-dokan-store .dokan-store-wrap,
  body.tts-future-dokan-store .dokan-store-page-wrap,
  body.tts-future-dokan-store .dokan-single-store {
    width: calc(100% - 36px) !important;
    padding-top: 38px !important;
  }
  body.tts-future-dokan-store .profile-info-summery-wrapper {
    padding: 18px !important;
  }
  body.tts-future-dokan-store .dokan-store-products-filter-area {
    grid-template-columns: 1fr !important;
  }
  body.tts-future-dokan-store .seller-items ul.products,
  body.tts-future-dokan-store ul.products {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  body.tts-future-product .tt-light-seller-box {
    grid-template-columns: 1fr !important;
  }
  body.tts-future-product .tt-light-seller-box__link {
    justify-self: start !important;
  }
  body.tts-future-product .tt-more-products__head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }
  body.tts-future-product .tt-more-products__grid,
  body.tts-future-product ul.tt-more-products__grid.products {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
  body.tts-future-product .tt-more-products .tts-product-card__visual {
    aspect-ratio: 1.08 / 1 !important;
  }
}

/* ==========================================================
   SINGLE PRODUCT HARDENING — legacy dark product shell off
   These selectors intentionally sit at the very end of the file.
   ========================================================== */
body.tts-future-product .tt-single-product,
body.tts-future-product .tt-single-product-grid,
body.tts-future-product .tt-single-product-summary,
body.tts-future-product .summary.entry-summary.tt-single-product-summary {
  background: transparent !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

body.tts-future-product .tt-single-product-gallery,
body.tts-future-product .woocommerce-product-gallery,
body.tts-future-product .woocommerce-product-gallery__wrapper,
body.tts-future-product .woocommerce-product-gallery__image {
  background: #e9e9e6 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product .woocommerce-product-gallery__image img,
body.tts-future-product .woocommerce-product-gallery img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: min(76vh, 860px) !important;
  object-fit: contain !important;
  object-position: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
  transition: none !important;
}
body.tts-future-product .flex-control-thumbs,
body.tts-future-product .flex-control-thumbs li {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product .flex-control-thumbs li {
  background: #e9e9e6 !important;
}

body.tts-future-product .tt-single-product-summary .product_title,
body.tts-future-product .tt-single-product-summary .price,
body.tts-future-product .tt-single-product-summary .price *,
body.tts-future-product .tt-single-product-summary .woocommerce-product-details__short-description,
body.tts-future-product .tt-single-product-summary .woocommerce-product-details__short-description *,
body.tts-future-product .tt-single-product-summary .product_meta,
body.tts-future-product .tt-single-product-summary .product_meta * {
  color: var(--tts-ink, #0b0b0b) !important;
  text-shadow: none !important;
}
body.tts-future-product .tt-single-product-summary .woocommerce-product-details__short-description,
body.tts-future-product .tt-single-product-summary .woocommerce-product-details__short-description * {
  color: var(--tts-ink-2, #343434) !important;
}

body.tts-future-product form.cart,
body.tts-future-product .woocommerce-variation-add-to-cart {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.tts-future-product form.cart .quantity .qty {
  background: #fff !important;
  color: var(--tts-ink, #0b0b0b) !important;
  border: 1px solid var(--tts-line, rgba(11,11,11,.12)) !important;
  box-shadow: none !important;
}
body.tts-future-product form.cart .single_add_to_cart_button,
body.tts-future-product .single_add_to_cart_button.button,
body.tts-future-product button.single_add_to_cart_button {
  background: var(--tts-ink, #0b0b0b) !important;
  background-image: none !important;
  color: #fff !important;
  border: 1px solid var(--tts-ink, #0b0b0b) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
}
body.tts-future-product form.cart .single_add_to_cart_button:hover,
body.tts-future-product .single_add_to_cart_button.button:hover {
  background: #252525 !important;
  color: #fff !important;
  transform: none !important;
}

@media (max-width: 820px) {
  body.tts-future-product .woocommerce-product-gallery__image img,
  body.tts-future-product .woocommerce-product-gallery img {
    max-height: 68vh !important;
    padding: clamp(18px, 7vw, 42px) !important;
  }
  body.tts-future-product .flex-control-thumbs {
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  }
}

@media (max-width: 520px) {
  body.tts-future-product .flex-control-thumbs {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  }
  body.tts-future-product form.cart {
    display: grid !important;
    grid-template-columns: 64px minmax(0,1fr) !important;
    gap: 8px !important;
  }
  body.tts-future-product form.cart .quantity,
  body.tts-future-product form.cart .quantity .qty {
    width: 100% !important;
  }
  body.tts-future-product form.cart .single_add_to_cart_button {
    width: 100% !important;
  }
}

/* ==========================================================
   FUTURE 2.1.2 — DOKAN STOREFRONT HARD RESET
   Removes legacy black/purple product-card styling and fixes spacing.
   ========================================================== */
body.tts-future-dokan-store.dokan-store main header,
body.tts-future-dokan-store.dokan-store-page main header,
body.tts-future-product main .tt-more-products__head{
  background:transparent!important;
  background-image:none!important;
  color:var(--tts-ink,#0b0b0b)!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

body.tts-future-dokan-store.dokan-store ul.products li.product,
body.tts-future-dokan-store.dokan-store-page ul.products li.product,
body.tts-future-dokan-store .dokan-store-wrap ul.products li.product,
body.tts-future-dokan-store .seller-items ul.products li.product{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--tts-ink,#0b0b0b)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  transition:none!important;
}
body.tts-future-dokan-store.dokan-store ul.products li.product:hover,
body.tts-future-dokan-store.dokan-store-page ul.products li.product:hover,
body.tts-future-dokan-store .dokan-store-wrap ul.products li.product:hover{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
body.tts-future-dokan-store .tts-product-card__visual{
  aspect-ratio:1 / 1!important;
  min-height:0!important;
  background:#e9e9e6!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.tts-future-dokan-store .tts-product-card__visual>a{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
}
body.tts-future-dokan-store.dokan-store ul.products li.product .tts-product-card__visual img,
body.tts-future-dokan-store.dokan-store-page ul.products li.product .tts-product-card__visual img,
body.tts-future-dokan-store .dokan-store-wrap ul.products li.product .tts-product-card__visual img{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:clamp(16px,2.2vw,34px)!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
}
body.tts-future-dokan-store .tts-product-card__info{
  padding:14px 0 0!important;
  margin:0!important;
  min-width:0!important;
  background:transparent!important;
  color:var(--tts-ink,#0b0b0b)!important;
}
body.tts-future-dokan-store .tts-product-card__category,
body.tts-future-dokan-store .tts-product-card__category a{
  margin:0 0 8px!important;
  padding:0!important;
  background:transparent!important;
  color:var(--tts-muted,#7b7b76)!important;
  font-size:.61rem!important;
  line-height:1.35!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
body.tts-future-dokan-store.dokan-store ul.products li.product .woocommerce-loop-product__title,
body.tts-future-dokan-store.dokan-store ul.products li.product .woocommerce-loop-product__title a,
body.tts-future-dokan-store.dokan-store-page ul.products li.product .woocommerce-loop-product__title,
body.tts-future-dokan-store.dokan-store-page ul.products li.product .woocommerce-loop-product__title a{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  background:transparent!important;
  color:var(--tts-ink,#0b0b0b)!important;
  font:500 clamp(.92rem,1.3vw,1.08rem)/1.22 Inter,system-ui,sans-serif!important;
  letter-spacing:-.02em!important;
  text-align:left!important;
  text-shadow:none!important;
}
body.tts-future-dokan-store .tts-product-card__bottom{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 36px!important;
  align-items:center!important;
  gap:14px!important;
  margin:12px 0 0!important;
  padding:0!important;
}
body.tts-future-dokan-store.dokan-store ul.products li.product .price,
body.tts-future-dokan-store.dokan-store-page ul.products li.product .price,
body.tts-future-dokan-store .dokan-store-wrap ul.products li.product .price{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--tts-ink,#0b0b0b)!important;
  font:500 .82rem/1.35 Inter,system-ui,sans-serif!important;
  text-shadow:none!important;
}
body.tts-future-dokan-store.dokan-store ul.products li.product .tts-product-card__action,
body.tts-future-dokan-store.dokan-store-page ul.products li.product .tts-product-card__action{
  width:36px!important;
  height:36px!important;
  margin:0!important;
  padding:0!important;
}
body.tts-future-dokan-store.tts-future-commerce.dokan-store ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon,
body.tts-future-dokan-store.tts-future-commerce.dokan-store-page ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon,
body.tts-future-dokan-store.tts-future-commerce .dokan-store-wrap ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon{
  box-sizing:border-box!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  max-width:36px!important;
  max-height:36px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  background:#0b0b0b!important;
  background-image:none!important;
  color:#fff!important;
  border:1px solid #0b0b0b!important;
  border-radius:50%!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
  font-size:18px!important;
  line-height:1!important;
}
body.tts-future-dokan-store.tts-future-commerce.dokan-store ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon:hover,
body.tts-future-dokan-store.tts-future-commerce.dokan-store ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon:focus,
body.tts-future-dokan-store.tts-future-commerce.dokan-store-page ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon:hover,
body.tts-future-dokan-store.tts-future-commerce.dokan-store-page ul.products li.product .tts-product-card__action a.button.tts-add-to-cart-icon:focus{
  background:#0b0b0b!important;
  background-image:none!important;
  color:#fff!important;
  border-color:#0b0b0b!important;
  box-shadow:none!important;
  transform:none!important;
}
body.tts-future-dokan-store .tts-add-to-cart-icon__glyph{
  color:#fff!important;
  display:block!important;
  font:400 18px/1 Inter,system-ui,sans-serif!important;
}

/* Remove black section-title panels from product/vendor content. */
body.tts-future-product .tt-more-products__head,
body.tts-future-product .tt-testimonianza__title,
body.tts-future-product .dokan-store-section>h2,
body.tts-future-product .dokan-store-section>h3,
body.tts-future-dokan-store .dokan-store-section>h2,
body.tts-future-dokan-store .dokan-store-section>h3{
  background:transparent!important;
  background-image:none!important;
  color:var(--tts-ink,#0b0b0b)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
body.tts-future-product .tt-more-products__head{
  padding:0 0 18px!important;
  border-bottom:1px solid var(--tts-line,rgba(11,11,11,.12))!important;
}

@media (max-width:820px){
  body.tts-future-dokan-store .seller-items ul.products,
  body.tts-future-dokan-store ul.products{
    gap:34px 10px!important;
  }
}
@media (max-width:640px){
  body.tts-future-dokan-store .tts-product-card__visual{aspect-ratio:1.08 / 1!important;}
  body.tts-future-dokan-store .tts-product-card__info{padding-top:12px!important;}
  body.tts-future-dokan-store .tts-product-card__bottom{margin-top:10px!important;}
}
