/* A&N Finds wishlist & share — scoped styles, no changes to existing design. */
.wishlist-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.wishlist-filter{display:inline-flex;align-items:center;gap:8px;min-height:39px;padding:8px 14px;border-radius:999px;border:1px solid #ddd4da;background:#fff;color:#4a2a3a;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .18s,border-color .18s}
.wishlist-filter:hover,.wishlist-filter.active{background:#4f2240;color:white;border-color:#4f2240}
.wishlist-filter>span:first-child{font-size:19px;line-height:1}
.wishlist-count{border-radius:999px;padding:2px 7px;background:#f3eef1;color:#4f2240;font-size:11px;line-height:1.3}
.wishlist-hint{font-size:12px;color:#817780}
.product-card .wishlist-save{position:absolute;right:12px;bottom:12px;z-index:2;width:39px;height:39px;display:grid;place-items:center;border:1px solid rgba(71,34,57,.12);border-radius:50%;background:rgba(255,255,255,.96);color:#74354f;font-size:24px;line-height:1;box-shadow:0 3px 12px rgba(0,0,0,.08);cursor:pointer}
.product-card .wishlist-save[aria-pressed="true"]{background:#702547;color:#fff}
.product-card .card-footer{flex-wrap:wrap}
.product-card .product-share{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:5px 12px;border:1px solid #e9dfe5;border-radius:999px;background:#fff;color:#613b50;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.product-card .product-share:hover{background:#f7f1f4}
.product-card.shared-product{outline:2px solid #9c617e;outline-offset:2px}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.wishlist-filter:focus-visible,.wishlist-save:focus-visible,.product-share:focus-visible{outline:2px solid #9e6586;outline-offset:3px}
@media(max-width:640px){
  .wishlist-toolbar{margin:0 0 12px;gap:8px}
  .wishlist-filter{min-height:35px;padding:6px 11px;font-size:12px}
  .wishlist-hint{font-size:11px}
  .product-card .wishlist-save{width:34px;height:34px;right:8px;bottom:8px;font-size:21px}
  .product-card .product-share{width:100%;min-height:31px;font-size:11px}
}

/* ================================================================
   PICKORA COMPACT STORE-FRONT POLISH — Nov 2026
   Scoped visual overrides. Keep HTML, product JS, hero and database as-is.
   ================================================================ */

/* Product card CTAs: never wrap "Shop Now" into two lines. */
.product-card .card-footer {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:7px 9px;
  justify-content:initial;
}
.product-card .shop-link {
  grid-column:1;
  display:inline-flex;
  width:max-content;
  max-width:100%;
  min-width:0;
  min-height:40px;
  padding:9px 14px;
  white-space:nowrap;
  font-size:12px;
  line-height:1.15;
  text-align:center;
  flex-shrink:0;
}
.product-card .product-share {
  grid-column:2;
  justify-self:end;
  width:auto;
  margin:0;
  white-space:nowrap;
  min-height:34px;
  padding:7px 11px;
}
.product-card .store-link-note {
  grid-column:1 / -1;
  grid-row:2;
  max-width:none;
  text-align:left;
  font-size:11px;
  line-height:1.35;
}

/* Category cards: neater tiles; images fit inside without clipping. */
.category-showcase .category-showcase-grid { gap:10px; }
.category-showcase .category-showcase-card { border-radius:12px; }
.category-showcase .category-showcase-visual {
  aspect-ratio:1.5/1;
  padding:7px;
  background:#f8f5f3;
}
.category-showcase .category-showcase-visual img {
  width:100%;height:100%;object-fit:contain;object-position:center;
  mix-blend-mode:normal;
}
.category-showcase .category-showcase-copy { padding:9px 10px 10px;gap:3px; }
.category-showcase .category-showcase-name { font-size:12px;line-height:1.3; }
.category-showcase .category-showcase-count { font-size:10px; }

@media(max-width:720px) {
  /* Small header and announcement; prevent oversized logo on scroll. */
  .top-strip {
    font-size:9px;
    padding:5px 14px;
    line-height:1.25;
    letter-spacing:0;
    text-wrap:balance;
  }
  .site-header .header-inner { min-height:48px;padding-block:5px; }
  .site-header .brand { gap:7px; }
  .site-header .brand-mark {
    width:27px;height:27px;flex:0 0 27px;
    font-size:14px;
  }
  .site-header .brand-text {font-size:clamp(20px,5.6vw,24px);line-height:1;}

  /* Remove excess room between category section and product catalogue. */
  .category-showcase { padding:15px 0 6px; }
  .category-showcase .category-showcase-head { margin-bottom:9px; gap:7px;align-items:center; }
  .category-showcase .category-showcase-head h2 { font-size:19px;line-height:1.18;margin:3px 0 2px; }
  .category-showcase .category-showcase-head .eyebrow {font-size:8px;letter-spacing:.07em;}
  .category-showcase .category-showcase-head p { font-size:10px;line-height:1.25; }
  .category-showcase .category-view-all { font-size:10px;padding:0;align-self:center; }
  .category-showcase .category-showcase-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
  .category-showcase .category-showcase-card { border-radius:10px; }
  .category-showcase .category-showcase-visual { aspect-ratio:1.5/1;padding:5px; }
  .category-showcase .category-showcase-copy {padding:6px 7px 8px;gap:2px;}
  .category-showcase .category-showcase-name {font-size:10px;line-height:1.2;}
  .category-showcase .category-showcase-count {font-size:9px;line-height:1.2;}
  .quick-categories {padding:9px 0 9px;}
  .quick-categories .category-row {padding-bottom:3px;}
  .quick-categories .category-chip {min-height:30px;padding:5px 10px;font-size:10px;}

  /* Compact featured header and catalogue filters. */
  .catalogue-section {padding-top:8px;}
  .catalogue-section .section-head {gap:5px;margin-bottom:9px;}
  .catalogue-section .section-head .eyebrow {font-size:9px;}
  .catalogue-section .section-head h2 {font-size:clamp(24px,6.5vw,29px);margin:4px 0 0;}
  .catalogue-section .section-head p {margin:4px 0 0;font-size:11px;line-height:1.35;}
  .catalogue-section .live-count {min-height:24px;font-size:10px;padding:3px 9px;}
  .catalogue-section .toolbar-shell {padding:0 0 7px;margin:0;}
  .catalogue-section .toolbar-top {display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin:0;}
  .catalogue-section .search-wrap {min-height:38px;padding:0 10px;border-radius:9px;gap:8px;}
  .catalogue-section .search-icon {font-size:16px;}
  .catalogue-section .search-wrap input {font-size:12px;}
  .catalogue-section .sort-wrap {display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;align-items:center;}
  .catalogue-section .sort-wrap label {font-size:11px;}
  .catalogue-section .sort-wrap select {width:100%;max-width:none;min-height:34px;padding:0 9px;font-size:12px;border-radius:9px;}
  .catalogue-section .discovery-filters {
    border:0;padding-top:7px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px 8px;
  }
  .catalogue-section .discovery-field {gap:3px;}
  .catalogue-section .discovery-field label {font-size:10px;}
  .catalogue-section .discovery-field select {min-height:34px;padding:0 8px;font-size:11px;border-radius:9px;}
  .catalogue-section .discovery-reset {
    grid-column:1/-1;
    min-height:27px;
    padding:2px 10px;
    font-size:11px;
    border-radius:8px;
    background:#faf7f8;
  }
  .catalogue-section .wishlist-toolbar {gap:7px;margin:0 0 10px;}
  .catalogue-section .wishlist-filter {min-height:31px;padding:5px 10px;font-size:11px;}
  .catalogue-section .wishlist-hint {font-size:10px;}

  /* Two-column product cards: readable compact buttons. */
  .product-card .card-footer {grid-template-columns:1fr;gap:6px;}
  .product-card .shop-link {
    grid-column:1;
    justify-self:stretch;
    width:100%;
    min-height:35px;
    padding:7px 5px;
    font-size:11px;
  }
  .product-card .product-share {
    grid-column:1;grid-row:3;
    justify-self:stretch;
    width:100%;min-height:30px;
    padding:5px 7px;
  }
  .product-card .store-link-note {grid-column:1;grid-row:2;font-size:10px;}
}

@media(min-width:721px) and (max-width:1024px) {
  .product-card .card-footer {grid-template-columns:1fr;}
  .product-card .shop-link {width:100%;justify-self:stretch;}
  .product-card .product-share {grid-column:1;grid-row:3;justify-self:start;}
  .product-card .store-link-note {grid-column:1;grid-row:2;}
}

/* ================================================================
   PICKORA MOBILE POLISH V2 — compact real layout, Nov 2026.
   Deliberately loaded last from wishlist-share.css. No JS changes.
   ================================================================ */

/* CATEGORY THUMBNAILS: fill the whole image frame, remove 4-side gaps.
   Cropping is limited to category thumbnails, not hero banners. */
.category-showcase .category-showcase-visual {
  padding: 0 !important;
  background: #f7f4f3;
  overflow: hidden;
  aspect-ratio: 1 / 0.88;
}
.category-showcase .category-showcase-visual img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover !important;
  object-position: center center;
  mix-blend-mode: normal;
}

@media (max-width: 720px) {
  /* CATEGORY: better proportions and less blank space. */
  .category-showcase .category-showcase-grid { gap: 7px; }
  .category-showcase .category-showcase-visual {
    aspect-ratio: 1 / 0.84;
    padding: 0 !important;
  }
  .category-showcase .category-showcase-copy { padding: 7px 7px 8px; }
  .category-showcase .category-showcase-name { font-size: 10.5px; line-height: 1.2; }
  .category-showcase .category-showcase-count { font-size: 9px; }

  /* FILTERS: one full-width search; one row of sort/store/price.
     display:contents flattens existing wrappers without changing HTML,
     DOM focus order, form controls or JS selectors. */
  .catalogue-section .toolbar-shell {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px 7px;
    align-items: end;
    border: 0;
    box-shadow: none;
    background: transparent;
    padding: 0 !important;
    margin: 0 0 7px !important;
    min-width: 0;
  }
  .catalogue-section .toolbar-top,
  .catalogue-section .discovery-filters {
    display: contents !important;
  }
  .catalogue-section .search-wrap {
    grid-column: 1 / -1;
    grid-row: 1;
    box-sizing: border-box;
    min-width: 0;
    width: 100%;
    min-height: 38px;
    padding: 0 11px;
    border-radius: 9px;
    margin: 0;
  }
  .catalogue-section .search-wrap input {
    font-size: 12px;
    min-width: 0;
    text-overflow: ellipsis;
  }
  .catalogue-section .sort-wrap {
    grid-column: 1;
    grid-row: 2;
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    min-width: 0;
    width: 100%;
    margin: 0;
  }
  .catalogue-section .sort-wrap label,
  .catalogue-section .discovery-field label {
    display: block;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;
    color: #716a70;
    margin: 0;
  }
  .catalogue-section .sort-wrap select,
  .catalogue-section .discovery-field select {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 33px !important;
    height: 33px;
    padding: 0 18px 0 8px !important;
    border: 1px solid #e9e4e6;
    background-color: #fff;
    color: #332330;
    border-radius: 8px !important;
    font-size: 11px !important;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin: 0;
  }
  .catalogue-section .discovery-field {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    min-width: 0;
    width: 100%;
    margin: 0;
  }
  .catalogue-section .discovery-field:nth-child(1) {
    grid-column: 2;
    grid-row: 2;
  }
  .catalogue-section .discovery-field:nth-child(2) {
    grid-column: 3;
    grid-row: 2;
  }
  .catalogue-section .discovery-reset {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: end;
    width: auto !important;
    min-height: 22px !important;
    height: auto;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 1px 2px 1px 8px !important;
    font-size: 10px !important;
    line-height: 1.4;
    color: #74314d;
    text-decoration: underline;
    text-underline-offset: 2px;
    margin: 0;
  }
  .catalogue-section .wishlist-toolbar { margin-top: 0; margin-bottom: 9px; }
  .catalogue-section .wishlist-hint { display: none; }
  .catalogue-section .wishlist-filter { min-height: 30px; }
}

/* Narrow phones still use same compact controls; prevent overflow. */
@media (max-width: 355px) {
  .catalogue-section .toolbar-shell { gap: 6px 5px; }
  .catalogue-section .sort-wrap select,
  .catalogue-section .discovery-field select { font-size: 10px !important; padding-left: 5px !important; padding-right: 13px !important; }
}

/* A&N Finds rebrand: keep longer wordmark within mobile header. */
@media (max-width: 640px) {
  .site-header .brand-text { font-size: clamp(17px, 5vw, 23px); white-space: nowrap; }
  .site-header .brand { min-width: 0; }
}
