/* ============================================================================
   ONEEXISTS — Shop archive page (WooCommerce override)
   Loaded on is_shop() / is_product_taxonomy() only.
   ============================================================================ */

/* Kill Astra sidebar + breadcrumb on shop */
.woocommerce.archive .ast-breadcrumbs-wrapper,
.woocommerce.archive .astra-breadcrumbs,
.woocommerce.archive .entry-header,
.woocommerce.archive .entry-title,
.woocommerce.archive .ast-single-post-order { display: none !important; }

.woocommerce.archive #primary { max-width: 100% !important; width: 100% !important; padding: 0 !important; }
.woocommerce.archive #secondary { display: none !important; }

.oe-shop-main {
  background: rgb(var(--oe-bg)) !important;
  color: rgb(var(--oe-text)) !important;
}

/* ---------- HERO ---------- */
.oe-shop-hero {
  padding-top: 4rem !important;
  padding-bottom: 2.5rem !important;
}
.oe-shop-hero__title {
  color: rgb(var(--oe-white)) !important;
  font-weight: 700 !important;
  letter-spacing: var(--oe-ls-extra-tight);
  line-height: var(--oe-lh-tight);
  margin: 0.75rem 0 1rem;
}
.oe-shop-hero__lede {
  color: rgb(var(--oe-white)) !important;
  opacity: 0.9;
  font-weight: 400;
  margin: 0 0 1.25rem;
}
.oe-shop-hero__count {
  color: rgb(var(--oe-silver)) !important;
  font-family: var(--oe-font-mono);
  font-size: var(--oe-fs-caption);
  letter-spacing: var(--oe-ls-wide);
  text-transform: uppercase;
  padding-top: 1rem;
  margin: 0;
  border-top: 1px solid rgb(var(--oe-hairline) / 0.15);
  max-width: 240px;
}
.oe-shop-hero__count span { color: rgb(var(--oe-white)); font-weight: 600; }

/* ---------- FILTER CHIPS ---------- */
.oe-shop-filters {
  border-top: 1px solid rgb(var(--oe-hairline) / 0.1);
  border-bottom: 1px solid rgb(var(--oe-hairline) / 0.1);
  padding: 1.5rem 0 !important;
  background: rgb(var(--oe-bg)) !important;
}
.oe-shop-filters__group + .oe-shop-filters__group { margin-top: 1rem; }
.oe-shop-filters__label {
  display: block;
  color: rgb(var(--oe-silver)) !important;
  margin-bottom: 0.5rem;
  opacity: 0.85;
}
.oe-shop-filters__chips { gap: 0.5rem; flex-wrap: wrap; }
.oe-shop-filters__chips .oe-chip {
  padding: 0.4rem 0.9rem;
  border: 1px solid rgb(var(--oe-hairline) / 0.25);
  border-radius: 999px;
  color: rgb(var(--oe-white)) !important;
  font-size: var(--oe-fs-caption);
  letter-spacing: var(--oe-ls-wide);
  text-transform: uppercase;
  transition: border-color .2s ease, background .2s ease;
  text-decoration: none;
}
.oe-shop-filters__chips .oe-chip:hover { border-color: rgb(var(--oe-hairline) / 0.5); }
.oe-shop-filters__chips .oe-chip--active {
  background: rgb(var(--oe-white)) !important;
  color: rgb(var(--oe-graphite)) !important;
  border-color: rgb(var(--oe-white)) !important;
}

/* ---------- GRID ---------- */
.oe-shop-grid ul.products,
.oe-shop-grid .products {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 2rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
@media (min-width: 40rem) {
  .oe-shop-grid ul.products, .oe-shop-grid .products {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (min-width: 64rem) {
  .oe-shop-grid ul.products, .oe-shop-grid .products {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2.5rem !important;
  }
}

/* ---------- TILE ---------- */
.oe-shop-tile {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  float: none !important;
}
.oe-shop-tile__link {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: rgb(var(--oe-white)) !important;
  text-decoration: none !important;
  height: 100%;
}
.oe-shop-tile__figure {
  position: relative;
  overflow: hidden;
  background: rgb(var(--oe-black));
  border: 1px solid rgb(var(--oe-hairline) / 0.15);
  transition: border-color .3s ease;
}
.oe-shop-tile__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s var(--oe-ease);
}
.oe-shop-tile__link:hover .oe-shop-tile__figure { border-color: rgb(var(--oe-hairline) / 0.4); }
.oe-shop-tile__link:hover .oe-shop-tile__figure img { transform: scale(1.03); }

.oe-shop-tile__badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 2;
  background: rgb(var(--oe-black) / 0.7) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: rgb(var(--oe-white)) !important;
  border: 1px solid rgb(var(--oe-silver) / 0.4) !important;
  padding: 0.35rem 0.7rem;
  font-family: var(--oe-font-mono);
  font-size: var(--oe-fs-caption);
  letter-spacing: var(--oe-ls-wide);
}

.oe-shop-tile__body {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding: 0 0.25rem;
}
.oe-shop-tile__cat {
  color: rgb(var(--oe-silver)) !important;
  opacity: 0.9;
}
.oe-shop-tile__title {
  color: rgb(var(--oe-white)) !important;
  font-weight: 700 !important;
  font-size: 1.125rem !important;
  line-height: 1.25 !important;
  letter-spacing: var(--oe-ls-tight);
  margin: 0;
}
.oe-shop-tile__meta {
  color: rgb(var(--oe-silver)) !important;
  font-family: var(--oe-font-mono);
  font-size: var(--oe-fs-caption);
  letter-spacing: var(--oe-ls-wide);
  text-transform: uppercase;
  margin: 0;
  opacity: 0.85;
}
.oe-shop-tile__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgb(var(--oe-hairline) / 0.12);
  margin-top: 0.5rem;
}
.oe-shop-tile__price {
  color: rgb(var(--oe-white)) !important;
  font-weight: 600;
  font-size: var(--oe-fs-body);
}
.oe-shop-tile__price bdi { color: inherit; }
.oe-shop-tile__cta {
  color: rgb(var(--oe-white)) !important;
  font-size: var(--oe-fs-caption);
  letter-spacing: var(--oe-ls-wide);
  text-transform: uppercase;
  transition: transform .2s var(--oe-ease);
}
.oe-shop-tile__link:hover .oe-shop-tile__cta { transform: translateX(4px); }

/* ---------- EMPTY STATE ---------- */
.oe-shop-empty {
  text-align: center;
  padding: 4rem 1rem;
  max-width: 44em;
  margin: 0 auto;
}
.oe-shop-empty .oe-lede {
  color: rgb(var(--oe-white)) !important;
  margin-bottom: 2rem;
}

/* ---------- WOO PAGINATION ---------- */
.oe-shop-grid .woocommerce-pagination {
  margin-top: 3rem !important;
  text-align: center;
}
.oe-shop-grid .woocommerce-pagination ul {
  display: inline-flex !important;
  gap: 0.5rem;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.oe-shop-grid .woocommerce-pagination ul li {
  border: none !important;
  margin: 0 !important;
}
.oe-shop-grid .woocommerce-pagination ul li a,
.oe-shop-grid .woocommerce-pagination ul li span {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.75rem !important;
  border: 1px solid rgb(var(--oe-hairline) / 0.2) !important;
  color: rgb(var(--oe-white)) !important;
  background: transparent !important;
  font-family: var(--oe-font-mono);
  font-size: var(--oe-fs-caption);
  text-decoration: none !important;
}
.oe-shop-grid .woocommerce-pagination ul li span.current {
  background: rgb(var(--oe-white)) !important;
  color: rgb(var(--oe-graphite)) !important;
  border-color: rgb(var(--oe-white)) !important;
}

/* ---------- WOO NOTICES ON ARCHIVE (result count / ordering) ---------- */
.oe-shop-grid .woocommerce-result-count,
.oe-shop-grid .woocommerce-ordering { display: none !important; }
