/* ============================================================
   SHOP / ARCHIVE
   ============================================================ */
.shop-hero {
  background: linear-gradient(180deg, var(--c-ice-deep), var(--c-white));
  border-bottom: 1px solid var(--c-line);
  padding-block: var(--s-7) var(--s-6);
}
.shop-hero__title {
  font-family: var(--f-display); font-size: var(--t-2xl); font-weight: 500;
  margin-block: var(--s-2) var(--s-3);
}
.shop-hero__desc { color: var(--c-ink-soft); max-width: 62ch; line-height: 1.7; }

.crumbs { font-size: var(--t-xs); color: var(--c-ink-soft); display: flex; gap: 7px; flex-wrap: wrap; }
.crumbs a:hover { color: var(--c-navy); }
.crumbs__sep { opacity: .45; }

/* --- Toolbar --- */
.shop-bar {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--s-4); flex-wrap: wrap;
  padding-block: var(--s-5);
  border-bottom: 1px solid var(--c-line);
  margin-bottom: var(--s-6);
}
.shop-bar__count { font-size: var(--t-sm); color: var(--c-ink-soft); }
.shop-bar__count strong { color: var(--c-ink); font-weight: 600; }
.shop-bar__right { display: flex; align-items: center; gap: var(--s-3); }
.shop-bar select, .woocommerce-ordering select {
  padding: 9px var(--s-4); padding-right: var(--s-6);
  border: 1px solid var(--c-line); border-radius: var(--r);
  background: var(--c-white); font-size: var(--t-sm); font-weight: 500;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23617483' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center;
}
.shop-bar select:focus { outline: none; border-color: var(--c-navy); }

/* --- Layout with sidebar --- */
.shop-layout { display: grid; grid-template-columns: 250px 1fr; gap: var(--s-7); align-items: start; }

.filters { position: sticky; top: 92px; }
.filter-group + .filter-group { margin-top: var(--s-5); padding-top: var(--s-5); border-top: 1px solid var(--c-line-soft); }
.filter-group__t {
  font-size: var(--t-xs); font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; margin-bottom: var(--s-3);
}
.filter-list { display: flex; flex-direction: column; gap: 9px; }
.filter-list a {
  display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-3);
  font-size: var(--t-sm); color: var(--c-ink-soft);
  transition: color .16s var(--ease), padding-left .16s var(--ease);
}
.filter-list a:hover { color: var(--c-navy); padding-left: 3px; }
.filter-list a.is-on { color: var(--c-navy); font-weight: 600; }
.filter-list .mega__count { font-size: 11px; }

.filter-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.filter-chip {
  font-size: var(--t-xs); padding: 6px 11px;
  border: 1px solid var(--c-line); border-radius: 100px;
  background: var(--c-white); color: var(--c-ink-soft);
  transition: border-color .18s var(--ease), color .18s var(--ease), background-color .18s var(--ease);
}
.filter-chip:hover, .filter-chip.is-on {
  border-color: var(--c-navy); color: var(--c-navy-deep); background: var(--c-ice-deep);
}

/* Mobile filter trigger */
.filters-toggle { display: none; }

@media (max-width: 1000px) {
  .shop-layout { grid-template-columns: 1fr; }
  .filters {
    position: fixed; inset: 0 0 0 auto; z-index: 96;
    width: min(88vw, 360px); background: var(--c-white);
    padding: var(--s-5); overflow-y: auto;
    transform: translateX(100%); transition: transform .3s var(--ease);
    box-shadow: var(--sh-3);
  }
  .filters.is-open { transform: none; }
  .filters-toggle { display: inline-flex; }
}

/* --- Pagination --- */
.woocommerce-pagination { margin-top: var(--s-8); display: flex; justify-content: center; }
.woocommerce-pagination ul { display: flex; gap: 6px; }
.woocommerce-pagination a, .woocommerce-pagination span {
  min-width: 40px; height: 40px; padding: 0 var(--s-3);
  display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--c-line); border-radius: var(--r);
  font-size: var(--t-sm); font-weight: 600; color: var(--c-ink-soft);
  transition: border-color .18s var(--ease), color .18s var(--ease), background-color .18s var(--ease);
}
.woocommerce-pagination a:hover { border-color: var(--c-navy); color: var(--c-navy); }
.woocommerce-pagination .current {
  background: var(--c-navy); border-color: var(--c-navy); color: #fff;
}

/* --- Empty state --- */
.shop-empty {
  text-align: center; padding-block: var(--s-9);
  border: 1px dashed var(--c-line); border-radius: var(--r-lg);
  background: var(--c-ice);
}
.shop-empty__t { font-family: var(--f-display); font-size: var(--t-xl); margin-bottom: var(--s-3); }
.shop-empty__d { color: var(--c-ink-soft); margin-bottom: var(--s-5); }

/* Woo notices, restyled to match */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  border: 1px solid var(--c-line); border-left: 3px solid var(--c-navy);
  background: var(--c-ice); border-radius: var(--r);
  padding: var(--s-4) var(--s-5); margin-bottom: var(--s-5);
  font-size: var(--t-sm); list-style: none;
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-4);
  flex-wrap: wrap;
}
.woocommerce-error { border-left-color: var(--c-sale); }
.woocommerce-message { border-left-color: var(--c-ok); }
