/*
 * Shop Light Mode — merged from wtb-shop-light (v1.2.0)
 * Full white-background for shop/category pages.
 * Activated by body.pt-light class (added via PHP in inc/modules/shop-light.php).
 * Enqueued only on WooCommerce shop/category pages.
 */
/* === Page background === */
html body.pt-shop-light,
html body.pt-shop-light .pt-shop-container,
html body.pt-shop-light .pt-shop-wrap,
html body.pt-shop-light .pt-shop-main{
  background: #ffffff !important;
  background-image: none !important;
  color: #0c2340 !important;
}

/* Shop header */
html body.pt-shop-light .pt-shop-header,
html body.pt-shop-light .pt-shop-header__title{ color: #0c2340 !important; background: transparent !important; text-shadow: none !important; }
html body.pt-shop-light .pt-shop-header__desc{ color: #475569 !important; }

/* Neutralize the dark grid panel */
html body.pt-shop-light .pt-shop-main .pt-products-grid.pt-products-grid{
  background: transparent !important; background-image: none !important;
  border: none !important; box-shadow: none !important; padding: 0 !important;
}

/* === SIDEBAR header === */
html body.pt-shop-light .pt-cat-widget__header{
  border-bottom: 1px solid rgba(12,35,64,.08) !important;
  padding-bottom: 12px !important;
  margin-bottom: 8px !important;
}
html body.pt-shop-light .pt-cat-widget__icon{ color: #0F766E !important; }
html body.pt-shop-light .pt-cat-widget__icon svg{ stroke: #0F766E !important; }
html body.pt-shop-light .pt-cat-widget__title{ color: #0c2340 !important; font-weight: 700 !important; }
html body.pt-shop-light .pt-cat-widget__sub{ color: #64748b !important; }

/* === SIDEBAR list items — wrap entire <a> === */
html body.pt-shop-light .pt-cat-widget__item{
  background: transparent !important;
  border-bottom: 1px solid rgba(12,35,64,.06) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
html body.pt-shop-light .pt-cat-widget__list > .pt-cat-widget__item:last-child{ border-bottom: none !important; }

html body.pt-shop-light .pt-cat-widget__item > a{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 10px 12px !important;
  color: #102d4f !important;            /* slate-800 on white = 13.6:1 AAA */
  text-decoration: none !important;
  border-radius: 10px !important;
  transition: background .15s ease, color .15s ease, transform .15s ease !important;
}
html body.pt-shop-light .pt-cat-widget__item > a:hover{
  background: #f0fdfa !important;        /* teal-50 */
  color: #0F766E !important;             /* teal-700 = 6.4:1 AA on teal-50 */
  transform: translateX(2px);
}
html body.pt-shop-light .pt-cat-widget__item > a:focus-visible{
  outline: 3px solid #0D9488 !important;
  outline-offset: 2px !important;
}

/* Item name + chevron */
html body.pt-shop-light .pt-cat-widget__name{
  color: inherit !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 500 !important;
}
html body.pt-shop-light .pt-cat-widget__name svg{
  stroke: #94a3b8 !important;            /* muted chevron */
  transition: stroke .15s ease, transform .15s ease !important;
}
html body.pt-shop-light .pt-cat-widget__item > a:hover .pt-cat-widget__name svg{
  stroke: #0F766E !important;
  transform: translateX(2px);
}

/* Count badge */
html body.pt-shop-light .pt-cat-widget__count{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 28px !important;
  height: 22px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  background: #f1f5f9 !important;        /* slate-100 */
  color: #475569 !important;             /* slate-600 = 7.5:1 AA on slate-100 */
  border: 1px solid rgba(12,35,64,.06) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}
html body.pt-shop-light .pt-cat-widget__item > a:hover .pt-cat-widget__count{
  background: #ccfbf1 !important;        /* teal-100 */
  color: #0F766E !important;
  border-color: rgba(13,148,136,.30) !important;
}

/* === ACTIVE state === */
html body.pt-shop-light .pt-cat-widget__item.active > a,
html body.pt-shop-light .pt-cat-widget__item.active{
  background: linear-gradient(90deg, rgba(13,148,136,.12), rgba(13,148,136,.04)) !important;
  border-radius: 10px !important;
}
html body.pt-shop-light .pt-cat-widget__item.active > a{
  color: #0F766E !important;
  font-weight: 700 !important;
  border-left: 3px solid #0D9488 !important;
  padding-left: 9px !important;
}
html body.pt-shop-light .pt-cat-widget__item.active .pt-cat-widget__name svg{ stroke: #0F766E !important; }
html body.pt-shop-light .pt-cat-widget__item.active .pt-cat-widget__count{
  background: linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

/* === Clear Filter button === */
html body.pt-shop-light .pt-cat-widget__clear{
  display: block !important;
  text-align: center !important;
  margin-top: 12px !important;
  padding: 10px 14px !important;
  color: #0F766E !important;
  background: #ffffff !important;
  border: 1px solid rgba(13,148,136,.35) !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background .15s, border-color .15s, color .15s !important;
}
html body.pt-shop-light .pt-cat-widget__clear:hover{
  background: #f0fdfa !important;
  border-color: #0D9488 !important;
  color: #115E59 !important;
}
html body.pt-shop-light .pt-cat-widget__clear:focus-visible{
  outline: 3px solid #0D9488 !important;
  outline-offset: 2px !important;
}

/* === Product card — readable typography on white === */
/* Override theme's .woocommerce h1/h2 white rule */
html body.pt-shop-light .pt-product-card .pt-product-card__title,
html body.pt-shop-light h1.pt-product-card__title,
html body.pt-shop-light h2.pt-product-card__title,
html body.pt-shop-light h3.pt-product-card__title{
  color: #0c2340 !important;            /* slate-900 = 19.3:1 AAA on white */
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 8px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.8em !important;
  text-shadow: none !important;
}
html body.pt-shop-light .pt-product-card__title a{
  color: #0c2340 !important;            /* AAA */
  text-decoration: none !important;
  transition: color .15s ease !important;
}
html body.pt-shop-light .pt-product-card__title a:hover,
html body.pt-shop-light .pt-product-card__title a:focus-visible{
  color: #0F766E !important;            /* teal-700 = 6.4:1 AA on white */
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 3px !important;
}

/* Price block layout */
html body.pt-shop-light .pt-product-card__price{
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin: 6px 0 12px !important;
}

/* Sale price (prominent) */
html body.pt-shop-light .pt-product-card__price-sale,
html body.pt-shop-light .pt-product-card__price-sale .amount,
html body.pt-shop-light .pt-product-card__price-sale bdi{
  color: #0F766E !important;            /* teal-700 = 6.4:1 AA */
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -0.01em !important;
}

/* Regular (strikethrough) price */
html body.pt-shop-light .pt-product-card__price-reg,
html body.pt-shop-light .pt-product-card__price-reg .amount,
html body.pt-shop-light .pt-product-card__price-reg bdi{
  color: #64748b !important;            /* slate-500 = 4.6:1 AA on white */
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: line-through !important;
  text-decoration-color: #94a3b8 !important;
  text-decoration-thickness: 1.5px !important;
}

/* Currency symbol — slightly muted but still readable */
html body.pt-shop-light .pt-product-card__price-sale .woocommerce-Price-currencySymbol{
  color: #0F766E !important;
  font-size: 0.85em !important;
  font-weight: 700 !important;
  margin-left: 1px !important;
}

/* Discount badge ("50% OFF") */
html body.pt-shop-light .pt-product-card__badge{
  background: linear-gradient(135deg, #059669, #047857) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  letter-spacing: 0.04em !important;
  padding: 5px 10px !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 6px rgba(5,150,105,.30) !important;
  text-shadow: none !important;
}

/* Action buttons — keep theme orange CTA, ensure View button has good contrast */
html body.pt-shop-light .pt-product-card__actions .pt-btn-view{
  background: #ffffff !important;
  color: #0c2340 !important;            /* AAA */
  border: 1px solid rgba(12,35,64,.18) !important;
  font-weight: 600 !important;
  transition: background .15s, border-color .15s, color .15s !important;
}
html body.pt-shop-light .pt-product-card__actions .pt-btn-view:hover{
  background: #f8fafc !important;
  border-color: #0F766E !important;
  color: #0F766E !important;
}

/* === Pagination === */
html body.pt-shop-light .woocommerce-pagination a,
html body.pt-shop-light .woocommerce-pagination span{
  color: #0c2340 !important;
  background: #ffffff !important;
  border: 1px solid rgba(12,35,64,.12) !important;
}
html body.pt-shop-light .woocommerce-pagination .current{
  background: linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

/* === v1.21 — SEARCH BOX & BREADCRUMB / NAV (light) === */

/* ---- Sort-bar inline search (if visible) ---- */
html body.pt-shop-light .pt-sort-bar__search,
html body.pt-shop-light form.pt-sort-bar__search{
  background:#ffffff !important;
  border:1px solid rgba(12,35,64,.12) !important;
  border-radius:10px !important;
  box-shadow:0 1px 2px rgba(12,35,64,.04) !important;
}
html body.pt-shop-light .pt-sort-bar__input,
html body.pt-shop-light input[type="search"].pt-sort-bar__input{
  background:transparent !important;
  color:#0c2340 !important;          /* AAA */
  border:none !important;
}
html body.pt-shop-light .pt-sort-bar__input::placeholder{ color:#94a3b8 !important; }
html body.pt-shop-light .pt-sort-bar__search:focus-within{
  border-color:#0F766E !important;
  box-shadow:0 0 0 3px rgba(15,118,110,.15) !important;
}
html body.pt-shop-light .pt-sort-bar__search button,
html body.pt-shop-light .pt-sort-bar__search button[type="submit"]{
  background:linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color:#ffffff !important;
  border:none !important;
}
html body.pt-shop-light .pt-sort-bar__search button:hover{
  background:linear-gradient(135deg,#0D5C56,#0a4a45) !important;
}

/* ---- Header search trigger button ---- */
html body.pt-shop-light .pt-search-toggle,
html body.pt-shop-light .pt-drawer-search{
  background:#ffffff !important;
  color:#0c2340 !important;
  border:1px solid rgba(12,35,64,.12) !important;
}
html body.pt-shop-light .pt-search-toggle:hover,
html body.pt-shop-light .pt-drawer-search:hover{
  background:#f0fdfa !important;
  color:#0F766E !important;
  border-color:#0F766E !important;
}

/* ---- WooCommerce / Yoast / RankMath breadcrumb ---- */
html body.pt-shop-light .woocommerce-breadcrumb,
html body.pt-shop-light .pt-breadcrumb,
html body.pt-shop-light .breadcrumbs,
html body.pt-shop-light nav.rank-math-breadcrumb,
html body.pt-shop-light .yoast-breadcrumb{
  background:transparent !important;
  color:#475569 !important;          /* slate-600 — 7:1 on white */
  font-size:14px !important;
  padding:8px 0 !important;
  margin-bottom:12px !important;
  border:none !important;
  text-shadow:none !important;
}
html body.pt-shop-light .woocommerce-breadcrumb a,
html body.pt-shop-light .pt-breadcrumb a,
html body.pt-shop-light .breadcrumbs a,
html body.pt-shop-light nav.rank-math-breadcrumb a,
html body.pt-shop-light .yoast-breadcrumb a{
  color:#0F766E !important;          /* teal-700 — AAA */
  text-decoration:none !important;
  font-weight:500 !important;
  transition:color .15s !important;
}
html body.pt-shop-light .woocommerce-breadcrumb a:hover,
html body.pt-shop-light .pt-breadcrumb a:hover,
html body.pt-shop-light .breadcrumbs a:hover,
html body.pt-shop-light nav.rank-math-breadcrumb a:hover,
html body.pt-shop-light .yoast-breadcrumb a:hover{
  color:#0D5C56 !important;
  text-decoration:underline !important;
}
html body.pt-shop-light .woocommerce-breadcrumb .delimiter,
html body.pt-shop-light .pt-breadcrumb .sep,
html body.pt-shop-light .breadcrumbs .separator{
  color:#cbd5e1 !important;
  margin:0 6px !important;
}

/* ---- Result count & ordering text on top of shop ---- */
html body.pt-shop-light .woocommerce-result-count,
html body.pt-shop-light .woocommerce-ordering,
html body.pt-shop-light .woocommerce-ordering select{
  color:#475569 !important;
  background:#ffffff !important;
}
html body.pt-shop-light .woocommerce-ordering select{
  border:1px solid rgba(12,35,64,.12) !important;
  border-radius:8px !important;
  padding:6px 10px !important;
}

/* ---- Search overlay (#ptb-search-overlay) — keep dark; just ensure it's not affected
   by the light page tone. Already a modal layer. ---- */


/* === v1.22 — Filter buttons, dropdowns & unified hover/focus === */

/* Universal focus-visible ring on shop-light interactive elements */
html body.pt-shop-light .pt-sort-btn:focus-visible,
html body.pt-shop-light .pt-cat-widget__item:focus-visible,
html body.pt-shop-light .pt-product-card a:focus-visible,
html body.pt-shop-light .pt-product-card button:focus-visible,
html body.pt-shop-light .woocommerce-pagination a:focus-visible,
html body.pt-shop-light .pt-clear-filter:focus-visible,
html body.pt-shop-light select:focus-visible,
html body.pt-shop-light input:focus-visible{
  outline: 2px solid #0F766E !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 4px rgba(15,118,110,.15) !important;
}

/* WooCommerce ordering / generic select dropdowns */
html body.pt-shop-light select,
html body.pt-shop-light select.orderby,
html body.pt-shop-light .woocommerce-ordering select{
  appearance: none !important; -webkit-appearance:none !important;
  background:#ffffff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230F766E' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 12px center !important;
  background-size: 12px 12px !important;
  color:#0c2340 !important;
  border:1px solid rgba(12,35,64,.12) !important;
  border-radius:10px !important;
  padding:9px 36px 9px 14px !important;
  font-weight:500 !important;
  box-shadow:0 1px 2px rgba(12,35,64,.04) !important;
  transition: border-color .15s, box-shadow .15s !important;
  cursor:pointer !important;
}
html body.pt-shop-light select:hover,
html body.pt-shop-light .woocommerce-ordering select:hover{
  border-color:#0F766E !important;
  background-color:#f0fdfa !important;
}
html body.pt-shop-light select:focus,
html body.pt-shop-light .woocommerce-ordering select:focus{
  border-color:#0F766E !important;
  box-shadow:0 0 0 3px rgba(15,118,110,.15) !important;
  outline:none !important;
}

/* Sort buttons — boost match with white card surface */
html body.pt-shop-light .pt-sort-bar a.pt-sort-btn{
  background:#ffffff !important;
  color:#102d4f !important;
  border:1px solid rgba(12,35,64,.12) !important;
  border-radius:999px !important;
  font-weight:500 !important;
  transition: background .15s, color .15s, border-color .15s, transform .1s !important;
}
html body.pt-shop-light .pt-sort-bar a.pt-sort-btn:hover{
  background:#f0fdfa !important;
  color:#0F766E !important;
  border-color:#0F766E !important;
}
html body.pt-shop-light .pt-sort-bar a.pt-sort-btn:active{
  transform: translateY(1px) !important;
}
html body.pt-shop-light .pt-sort-bar a.pt-sort-btn.active{
  background:linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color:#ffffff !important;
  border-color:transparent !important;
  box-shadow:0 2px 8px rgba(15,118,110,.25) !important;
}

/* Sidebar Clear Filter button — unify hover with cards */
html body.pt-shop-light .pt-clear-filter,
html body.pt-shop-light a.pt-clear-filter,
html body.pt-shop-light button.pt-clear-filter{
  background:#ffffff !important;
  color:#0F766E !important;
  border:1.5px solid #0F766E !important;
  border-radius:10px !important;
  font-weight:600 !important;
  transition: background .15s, color .15s, box-shadow .15s !important;
}
html body.pt-shop-light .pt-clear-filter:hover{
  background:linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color:#ffffff !important;
  box-shadow:0 4px 12px rgba(15,118,110,.25) !important;
}

/* Pagination — hover ring + focus consistency */
html body.pt-shop-light .woocommerce-pagination a:hover{
  background:#f0fdfa !important;
  border-color:#0F766E !important;
  color:#0F766E !important;
}

/* Product card View button — match focus ring */
html body.pt-shop-light .pt-product-card__actions .pt-btn-view:focus-visible{
  background:#f0fdfa !important;
  border-color:#0F766E !important;
  color:#0F766E !important;
}


/* === v1.23 — Pagination + card spacing fixes (overrides ember-palette dark pagination) === */

/* PAGINATION — actual markup is nav.pagination > ul.page-numbers > li > a/span.page-numbers
   The ember-palette plugin paints these dark; force light here with higher specificity. */
html body.pt-shop-light .pt-pagination,
html body.pt-shop-light nav.navigation.pagination,
html body.pt-shop-light nav.pagination{
  background: transparent !important;
  margin: 28px 0 8px !important;
  padding: 0 !important;
}
html body.pt-shop-light .pt-pagination ul.page-numbers,
html body.pt-shop-light nav.pagination ul.page-numbers,
html body.pt-shop-light ul.page-numbers{
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 6px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
}
html body.pt-shop-light ul.page-numbers li{
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.pt-shop-light ul.page-numbers li a.page-numbers,
html body.pt-shop-light ul.page-numbers li span.page-numbers,
html body.pt-shop-light a.page-numbers,
html body.pt-shop-light span.page-numbers{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  height: 40px !important;
  padding: 0 14px !important;
  background: #ffffff !important;
  color: #0c2340 !important;
  border: 1px solid rgba(12,35,64,.12) !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  box-shadow: 0 1px 2px rgba(12,35,64,.04) !important;
  transition: background .15s, color .15s, border-color .15s, transform .1s !important;
}
html body.pt-shop-light a.page-numbers:hover,
html body.pt-shop-light .page-numbers:hover{
  background: #f0fdfa !important;
  color: #0F766E !important;
  border-color: #0F766E !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(15,118,110,.15) !important;
}
html body.pt-shop-light span.page-numbers.current,
html body.pt-shop-light .page-numbers.current,
html body.pt-shop-light li .current{
  background: linear-gradient(135deg,#0F766E,#0D5C56) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(15,118,110,.25) !important;
}
html body.pt-shop-light .page-numbers.dots{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #94a3b8 !important;
  cursor: default !important;
}
html body.pt-shop-light a.next.page-numbers,
html body.pt-shop-light a.prev.page-numbers{
  padding: 0 18px !important;
  font-weight: 600 !important;
}

/* CARD SPACING — uniform breathing room between rows on light bg */
html body.pt-shop-light .pt-products-grid{
  gap: 20px !important;
  row-gap: 24px !important;
  padding: 8px 0 !important;
}
@media (max-width: 768px){
  html body.pt-shop-light .pt-products-grid{ gap: 14px !important; row-gap: 16px !important; }
}
@media (max-width: 480px){
  html body.pt-shop-light .pt-products-grid{ gap: 12px !important; }
}

/* Ensure card has consistent vertical rhythm */
html body.pt-shop-light .pt-product-card{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
html body.pt-shop-light .pt-product-card__body,
html body.pt-shop-light .pt-product-card__content{
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
html body.pt-shop-light .pt-product-card__actions{
  margin-top: auto !important;
  padding-top: 12px !important;
}

/* Force light sort bar on pt-shop-light pages (override any dark variant by specificity) */
html body.pt-shop-light .pt-sort-bar.pt-sort-bar{
  background: #ffffff !important;
  border: 1px solid rgba(12,35,64,.08) !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 8px rgba(12,35,64,.04) !important;
  padding: 12px !important;
  margin-bottom: 18px !important;
}


/* === v1.24 — Mobile responsive: search box + breadcrumb / nav === */

/* Tablet & below */
@media (max-width: 768px){

  /* --- Inline sort-bar search (when shown) --- */
  html body.pt-shop-light .pt-sort-bar__search,
  html body.pt-shop-light form.pt-sort-bar__search{
    width: 100% !important;
    flex: 1 1 100% !important;
    margin-bottom: 8px !important;
    border-radius: 12px !important;
  }
  html body.pt-shop-light .pt-sort-bar__input{
    width: 100% !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    min-height: 42px !important;
  }
  html body.pt-shop-light .pt-sort-bar__search button{
    min-width: 44px !important;
    min-height: 44px !important;
  }

  /* --- Header search trigger --- */
  html body.pt-shop-light .pt-drawer-search,
  html body.pt-shop-light .pt-search-toggle{
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border-radius: 10px !important;
  }

  /* --- Search overlay (#ptb-search-overlay) on mobile --- */
  html body.pt-shop-light #ptb-search-overlay{
    padding: 16px !important;
  }
  html body.pt-shop-light .ptb-sr-input,
  html body.pt-shop-light #ptb-sr-input{
    width: 100% !important;
    font-size: 16px !important;          /* prevents iOS zoom */
    padding: 12px 14px !important;
    border-radius: 12px !important;
    min-height: 48px !important;
  }

  /* --- Breadcrumb: wrap, smaller font, horizontal scroll fallback --- */
  html body.pt-shop-light .woocommerce-breadcrumb,
  html body.pt-shop-light .pt-breadcrumb,
  html body.pt-shop-light .breadcrumbs,
  html body.pt-shop-light nav.rank-math-breadcrumb,
  html body.pt-shop-light .yoast-breadcrumb{
    font-size: 12.5px !important;
    line-height: 1.5 !important;
    padding: 6px 0 !important;
    margin-bottom: 8px !important;
    flex-wrap: wrap !important;
    word-break: break-word !important;
  }
  html body.pt-shop-light .woocommerce-breadcrumb a,
  html body.pt-shop-light .pt-breadcrumb a,
  html body.pt-shop-light .breadcrumbs a{
    display: inline-block !important;
    padding: 2px 0 !important;
  }
  html body.pt-shop-light .woocommerce-breadcrumb .delimiter{
    margin: 0 4px !important;
  }

  /* --- Result count / WooCommerce ordering on mobile (stack) --- */
  html body.pt-shop-light .woocommerce-result-count,
  html body.pt-shop-light .woocommerce-ordering{
    display: block !important;
    width: 100% !important;
    float: none !important;
    margin: 0 0 8px !important;
    text-align: left !important;
  }
  html body.pt-shop-light .woocommerce-ordering select{
    width: 100% !important;
    font-size: 14px !important;
    min-height: 44px !important;
  }

  /* --- Pagination pills smaller on mobile --- */
  html body.pt-shop-light ul.page-numbers li a.page-numbers,
  html body.pt-shop-light ul.page-numbers li span.page-numbers,
  html body.pt-shop-light a.page-numbers,
  html body.pt-shop-light span.page-numbers{
    min-width: 36px !important;
    height: 36px !important;
    padding: 0 10px !important;
    font-size: 13px !important;
  }
  html body.pt-shop-light ul.page-numbers{
    gap: 4px !important;
  }
  html body.pt-shop-light a.next.page-numbers,
  html body.pt-shop-light a.prev.page-numbers{
    padding: 0 12px !important;
  }

  /* --- Sort bar internal padding on mobile --- */
  html body.pt-shop-light .pt-sort-bar.pt-sort-bar{
    padding: 10px !important;
    border-radius: 12px !important;
    margin-bottom: 14px !important;
  }
}

/* Small phones */
@media (max-width: 420px){
  html body.pt-shop-light .woocommerce-breadcrumb,
  html body.pt-shop-light .pt-breadcrumb,
  html body.pt-shop-light .breadcrumbs{
    font-size: 12px !important;
  }
  html body.pt-shop-light ul.page-numbers li a.page-numbers,
  html body.pt-shop-light ul.page-numbers li span.page-numbers,
  html body.pt-shop-light a.page-numbers,
  html body.pt-shop-light span.page-numbers{
    min-width: 32px !important;
    height: 32px !important;
    padding: 0 8px !important;
    font-size: 12.5px !important;
  }
  /* Hide "..." dots on very small to save space */
  html body.pt-shop-light .page-numbers.dots{
    min-width: 20px !important;
    padding: 0 4px !important;
  }
}


/* === v1.25 — focus/hover/active for search, inputs & breadcrumb links === */

/* ---- All input fields (text/search/email/url/number/tel/password + textarea) ---- */
html body.pt-shop-light input[type="text"],
html body.pt-shop-light input[type="search"],
html body.pt-shop-light input[type="email"],
html body.pt-shop-light input[type="url"],
html body.pt-shop-light input[type="tel"],
html body.pt-shop-light input[type="number"],
html body.pt-shop-light input[type="password"],
html body.pt-shop-light textarea{
  background:#ffffff !important;
  color:#0c2340 !important;
  border:1px solid rgba(12,35,64,.14) !important;
  border-radius:10px !important;
  padding:10px 14px !important;
  font-size:14px !important;
  box-shadow:inset 0 1px 2px rgba(12,35,64,.03) !important;
  transition: border-color .15s, box-shadow .15s, background .15s !important;
}
html body.pt-shop-light input::placeholder,
html body.pt-shop-light textarea::placeholder{
  color:#94a3b8 !important;
  opacity:1 !important;
}
html body.pt-shop-light input:hover,
html body.pt-shop-light textarea:hover{
  border-color:#cbd5e1 !important;
  background:#fafafa !important;
}
html body.pt-shop-light input:focus,
html body.pt-shop-light input:focus-visible,
html body.pt-shop-light textarea:focus,
html body.pt-shop-light textarea:focus-visible{
  outline:none !important;
  border-color:#0F766E !important;
  background:#ffffff !important;
  box-shadow:0 0 0 3px rgba(15,118,110,.18), inset 0 1px 2px rgba(15,118,110,.04) !important;
}
html body.pt-shop-light input:active{
  border-color:#0D5C56 !important;
}
/* Disabled state */
html body.pt-shop-light input:disabled,
html body.pt-shop-light textarea:disabled{
  background:#f8fafc !important;
  color:#94a3b8 !important;
  border-color:rgba(12,35,64,.08) !important;
  cursor:not-allowed !important;
}

/* ---- Sort-bar search wrapper (focus-within ring on the whole pill) ---- */
html body.pt-shop-light .pt-sort-bar__search,
html body.pt-shop-light form.pt-sort-bar__search{
  transition: border-color .15s, box-shadow .15s, background .15s !important;
}
html body.pt-shop-light .pt-sort-bar__search:hover{
  border-color:#cbd5e1 !important;
  box-shadow:0 2px 6px rgba(12,35,64,.06) !important;
}
html body.pt-shop-light .pt-sort-bar__search:focus-within{
  border-color:#0F766E !important;
  box-shadow:0 0 0 3px rgba(15,118,110,.18) !important;
}
/* Inner input strips its own ring inside the wrapper to avoid double ring */
html body.pt-shop-light .pt-sort-bar__search input[type="search"],
html body.pt-shop-light .pt-sort-bar__search .pt-sort-bar__input{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
}
html body.pt-shop-light .pt-sort-bar__search input:focus{
  box-shadow:none !important;
}

/* ---- Header search trigger (#ptDrawerSearch / .pt-search-toggle) ---- */
html body.pt-shop-light .pt-drawer-search,
html body.pt-shop-light .pt-search-toggle,
html body.pt-shop-light #ptDrawerSearch{
  transition: background .15s, color .15s, border-color .15s, box-shadow .15s, transform .1s !important;
}
html body.pt-shop-light .pt-drawer-search:hover,
html body.pt-shop-light .pt-search-toggle:hover,
html body.pt-shop-light #ptDrawerSearch:hover{
  background:#f0fdfa !important;
  color:#0F766E !important;
  border-color:#0F766E !important;
  box-shadow:0 4px 12px rgba(15,118,110,.15) !important;
}
html body.pt-shop-light .pt-drawer-search:focus-visible,
html body.pt-shop-light .pt-search-toggle:focus-visible,
html body.pt-shop-light #ptDrawerSearch:focus-visible{
  outline:2px solid #0F766E !important;
  outline-offset:2px !important;
  background:#f0fdfa !important;
  color:#0F766E !important;
}
html body.pt-shop-light .pt-drawer-search:active,
html body.pt-shop-light .pt-search-toggle:active,
html body.pt-shop-light #ptDrawerSearch:active{
  transform: scale(.96) !important;
  background:#ccfbf1 !important;
}

/* ---- Search overlay input (#ptb-sr-input) ---- */
html body.pt-shop-light .ptb-sr-input,
html body.pt-shop-light #ptb-sr-input{
  background:#ffffff !important;
  color:#0c2340 !important;
  border:1.5px solid rgba(12,35,64,.14) !important;
  border-radius:12px !important;
  transition: border-color .15s, box-shadow .15s !important;
}
html body.pt-shop-light .ptb-sr-input::placeholder,
html body.pt-shop-light #ptb-sr-input::placeholder{ color:#94a3b8 !important; }
html body.pt-shop-light .ptb-sr-input:hover,
html body.pt-shop-light #ptb-sr-input:hover{
  border-color:#cbd5e1 !important;
}
html body.pt-shop-light .ptb-sr-input:focus,
html body.pt-shop-light #ptb-sr-input:focus{
  outline:none !important;
  border-color:#0F766E !important;
  box-shadow:0 0 0 4px rgba(15,118,110,.18) !important;
}

/* ---- Breadcrumb links (woocommerce / yoast / rankmath / pt-breadcrumb) ---- */
html body.pt-shop-light .woocommerce-breadcrumb a,
html body.pt-shop-light .pt-breadcrumb a,
html body.pt-shop-light .breadcrumbs a,
html body.pt-shop-light nav.rank-math-breadcrumb a,
html body.pt-shop-light .yoast-breadcrumb a{
  position:relative !important;
  color:#0F766E !important;
  text-decoration:none !important;
  padding:2px 4px !important;
  border-radius:6px !important;
  transition: color .15s, background .15s, box-shadow .15s !important;
}
html body.pt-shop-light .woocommerce-breadcrumb a:hover,
html body.pt-shop-light .pt-breadcrumb a:hover,
html body.pt-shop-light .breadcrumbs a:hover,
html body.pt-shop-light nav.rank-math-breadcrumb a:hover,
html body.pt-shop-light .yoast-breadcrumb a:hover{
  color:#0D5C56 !important;
  background:#f0fdfa !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}
html body.pt-shop-light .woocommerce-breadcrumb a:focus-visible,
html body.pt-shop-light .pt-breadcrumb a:focus-visible,
html body.pt-shop-light .breadcrumbs a:focus-visible,
html body.pt-shop-light nav.rank-math-breadcrumb a:focus-visible,
html body.pt-shop-light .yoast-breadcrumb a:focus-visible{
  outline:2px solid #0F766E !important;
  outline-offset:2px !important;
  background:#f0fdfa !important;
  color:#0D5C56 !important;
}
html body.pt-shop-light .woocommerce-breadcrumb a:active,
html body.pt-shop-light .pt-breadcrumb a:active,
html body.pt-shop-light .breadcrumbs a:active{
  color:#0a4a45 !important;
  background:#ccfbf1 !important;
}
/* Current (last) breadcrumb segment — non-link, slate text */
html body.pt-shop-light .woocommerce-breadcrumb > span:last-child,
html body.pt-shop-light .pt-breadcrumb > span.current,
html body.pt-shop-light .breadcrumb_last,
html body.pt-shop-light .breadcrumbs .current{
  color:#102d4f !important;
  font-weight:600 !important;
  cursor:default !important;
}


/* === v1.27 — Keyboard focus audit fix: pagination + ordering select === */

/* The universal rule targeted .woocommerce-pagination a (no match in actual
   markup). Add the real selectors so Tab/Shift+Tab shows the teal ring. */
html body.pt-shop-light a.page-numbers:focus-visible,
html body.pt-shop-light ul.page-numbers a.page-numbers:focus-visible,
html body.pt-shop-light a.next.page-numbers:focus-visible,
html body.pt-shop-light a.prev.page-numbers:focus-visible{
  outline: 2px solid #0F766E !important;
  outline-offset: 2px !important;
  background: #f0fdfa !important;
  color: #0F766E !important;
  border-color: #0F766E !important;
  box-shadow: 0 0 0 4px rgba(15,118,110,.18) !important;
  z-index: 2 !important;                /* lift above sibling borders */
  position: relative !important;
}

/* WooCommerce ordering <select.orderby> — already covered, but make focus
   ring explicit and visible against white shop bg. */
html body.pt-shop-light select.orderby:focus-visible,
html body.pt-shop-light .woocommerce-ordering select:focus-visible{
  outline: 2px solid #0F766E !important;
  outline-offset: 2px !important;
  border-color: #0F766E !important;
  box-shadow: 0 0 0 4px rgba(15,118,110,.18) !important;
}

/* Sidebar filter row — when the parent .pt-cat-widget__item is the actual
   focus target (some themes wrap the link, others make the LI focusable). */
html body.pt-shop-light .pt-cat-widget__item:focus-within,
html body.pt-shop-light li.pt-cat-widget__item:focus-within{
  background: #f0fdfa !important;
  outline: none !important;
}
html body.pt-shop-light .pt-cat-widget__item a:focus-visible{
  outline: 2px solid #0F766E !important;
  outline-offset: -2px !important;       /* inset to avoid clipping */
  background: #f0fdfa !important;
  color: #0F766E !important;
  border-radius: 8px !important;
}

/* Sort buttons — make focus visually distinct from active state */
html body.pt-shop-light .pt-sort-bar a.pt-sort-btn:focus-visible{
  outline: 2px solid #0F766E !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(15,118,110,.18) !important;
}

/* Skip-to-main-content link — high contrast, visible only on focus */
html body.pt-shop-light .skip-link:focus,
html body.pt-shop-light .skip-link:focus-visible,
html body.pt-shop-light a.skip-link:focus{
  background: #0F766E !important;
  color: #ffffff !important;
  outline: 2px solid #ffffff !important;
  outline-offset: 2px !important;
  box-shadow: 0 4px 16px rgba(15,118,110,.35) !important;
}
