/* =====================================================================
   NC Shop Page — Neha Collections shop / category design
   ===================================================================== */
:root {
  --ncsp-pink: var(--ast-global-color-0, #BE185D);
  --ncsp-pink-d: var(--ast-global-color-1, #9D174D);
  --ncsp-head: #1F1A24;
  --ncsp-text: #4A4252;
  --ncsp-soft: #FDF2F8;
  --ncsp-lilac: #F6F3F8;
  --ncsp-border: #EDE4F0;
  --ncsp-gold: #F59E0B;
  --ncsp-plum: #1D1426;
  --ncsp-muted: #6D6577;
  --ncsp-ok: #16A34A;
  --ncsp-serif: "Playfair Display", Georgia, serif;
  --ncsp-sans: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* =========================  PRODUCT GRID + CARD  ========================= */
ul.products.ncsp-grid {
  display: grid !important;
  grid-template-columns: repeat(var(--ncsp-cols, 4), minmax(0, 1fr)) !important;
  gap: 32px 20px !important;
  margin: 0 0 40px !important;
  padding: 0 !important;
  list-style: none !important;
}
ul.products.ncsp-grid::before,
ul.products.ncsp-grid::after { display: none !important; content: none !important; }
ul.products.ncsp-grid > li.ncp-card {
  width: auto !important; max-width: none !important;
  float: none !important; clear: none !important;
  margin: 0 !important; padding: 0 !important;
  display: flex !important; flex-direction: column;
  min-width: 0; text-align: left !important;
  background: none !important; border: 0 !important; box-shadow: none !important;
  font-family: var(--ncsp-sans);
}
.ncsp-grid .ncp-card *,
.ncsp-grid .ncp-card *::before,
.ncsp-grid .ncp-card *::after { box-sizing: border-box; }
.ncsp-grid .ncp-card,
.ncsp-grid .ncp-card * { font-family: var(--ncsp-sans) !important; }

.ncsp-grid .ncp-media {
  position: relative; display: block; aspect-ratio: 3 / 4;
  border-radius: 14px; overflow: hidden; background: var(--ncsp-soft);
  isolation: isolate; transform: translateZ(0); margin: 0 !important;
}
.ncsp-grid .ncp-media .ncp-img {
  position: absolute; inset: 0;
  width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover; object-position: center top;
  margin: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  transition: opacity .45s ease, transform .7s cubic-bezier(.2, .7, .2, 1);
}
.ncsp-grid .ncp-media .ncp-img2 { opacity: 0; }
.ncsp-grid .ncp-card:hover .ncp-media.has-hover .ncp-img2 { opacity: 1; }
.ncsp-grid .ncp-card:hover .ncp-media .ncp-img { transform: scale(1.04); }
.ncsp-grid .ncp-badges { position: absolute; top: 12px; left: 12px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; z-index: 2; pointer-events: none; }
.ncsp-grid .ncp-badge { font-size: 11px; font-weight: 600; letter-spacing: .05em; line-height: 1; padding: 6px 9px; border-radius: 6px; text-transform: none; }
.ncsp-grid .ncp-b-new { background: var(--ncsp-gold); color: var(--ncsp-head); }
.ncsp-grid .ncp-b-off { background: var(--ncsp-pink); color: #fff; }
.ncsp-grid .ncp-b-best { background: var(--ncsp-plum); color: #fff; }
.ncsp-grid .ncp-b-oos { background: #fff; color: var(--ncsp-head); border: 1px solid var(--ncsp-border); }
.ncsp-grid .ncp-card.is-oos .ncp-img { filter: grayscale(.35); opacity: .8; }

.ncsp-grid .ncp-info { display: flex; flex-direction: column; gap: 6px; padding: 14px 2px 0; flex: 1; }
.ncsp-grid .ncp-card .ncp-title,
.ncsp-grid .ncp-card .ncp-title a {
  margin: 0 !important; padding: 0 !important;
  font-size: 15px !important; font-weight: 500 !important; font-style: normal !important;
  line-height: 1.45 !important; letter-spacing: 0 !important; text-transform: none !important;
  color: var(--ncsp-head) !important;
}
.ncsp-grid .ncp-card .ncp-title { min-height: calc(1.45em * 2); }
.ncsp-grid .ncp-card .ncp-title a { text-decoration: none !important; display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; background: none !important; }
.ncsp-grid .ncp-card .ncp-title a:hover { color: var(--ncsp-pink) !important; }
.ncsp-grid .ncp-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; font-size: 16px; line-height: 1.3; margin: 0; }
.ncsp-grid .ncp-price .ncp-now,
.ncsp-grid .ncp-price .ncp-now .amount { color: var(--ncsp-pink) !important; font-weight: 600; }
.ncsp-grid .ncp-price .ncp-now ins { text-decoration: none; background: none; }
.ncsp-grid .ncp-price .ncp-now del { color: var(--ncsp-muted) !important; font-weight: 400; font-size: 13px; }
.ncsp-grid .ncp-price .ncp-now del .amount { color: var(--ncsp-muted) !important; font-weight: 400; }
.ncsp-grid .ncp-price .ncp-mrp,
.ncsp-grid .ncp-price .ncp-mrp .amount { color: var(--ncsp-muted) !important; font-size: 13px; font-weight: 400; }
.ncsp-grid .ncp-price .ncp-off { color: var(--ncsp-ok); font-size: 12px; font-weight: 600; }
.ncsp-grid .ncp-low { font-size: 12px; font-weight: 600; color: #B45309; }
.ncsp-grid .ncp-rating { display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--ncsp-muted); }
.ncsp-grid .ncp-stars { position: relative; display: inline-block; font-size: 13px; letter-spacing: 2px; line-height: 1; color: #E5DCE8; font-family: Arial, sans-serif !important; }
.ncsp-grid .ncp-stars::before { content: "★★★★★"; }
.ncsp-grid .ncp-stars::after { content: "★★★★★"; position: absolute; left: 0; top: 0; width: var(--r); overflow: hidden; white-space: nowrap; color: var(--ncsp-gold); }
.ncsp-grid .ncp-btn {
  display: flex !important; align-items: center; justify-content: center;
  width: 100%; min-height: 46px; margin: 14px 0 0 !important; padding: 0 18px !important;
  border: 1.5px solid var(--ncsp-pink) !important; border-radius: 999px !important;
  background: transparent !important; color: var(--ncsp-pink) !important;
  font-size: 14px !important; font-weight: 600 !important; line-height: 1.2 !important;
  letter-spacing: 0 !important; text-transform: none !important; text-decoration: none !important;
  box-shadow: none !important; transition: background .2s, color .2s;
}
.ncsp-grid .ncp-btn:hover,
.ncsp-grid .ncp-btn:focus-visible { background: var(--ncsp-pink) !important; color: #fff !important; }
.ncsp-grid .ncp-btn.loading { opacity: .6; pointer-events: none; }
.ncsp-grid .ncp-btn.loading::after { display: none !important; }
.ncsp-grid .ncp-btn.added { background: var(--ncsp-pink) !important; color: #fff !important; }
.ncsp-grid .ncp-btn.added::after { content: " ✓"; margin-left: 4px; position: static !important; font-family: inherit !important; }
.ncsp-grid .ncp-btn-muted { border-color: var(--ncsp-border) !important; color: var(--ncsp-muted) !important; }
.ncsp-grid .ncp-btn-muted:hover { background: var(--ncsp-soft) !important; color: var(--ncsp-head) !important; }
.ncsp-grid .added_to_cart { display: block; text-align: center; font-size: 13px; font-weight: 500; color: var(--ncsp-pink) !important; margin-top: 8px; text-decoration: underline; padding: 0 !important; background: none !important; }
.ncsp-grid .ncp-media:focus-visible,
.ncsp-grid .ncp-title a:focus-visible { outline: 3px solid var(--ncsp-gold); outline-offset: 3px; }
@media (hover: none) {
  .ncsp-grid .ncp-card:hover .ncp-media .ncp-img { transform: none; }
  .ncsp-grid .ncp-card:hover .ncp-media.has-hover .ncp-img2 { opacity: 0; }
}

/* =========================  ARCHIVE PAGES ONLY  ========================= */
.ncsp-wrap { max-width: var(--ncsp-container, 1240px); margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.ncsp-hero .ncsp-wrap { width: 100%; }

/* ---------- Banner ---------- */
.ncsp-hero {
  background: linear-gradient(180deg, var(--ncsp-soft) 0%, #fff 100%);
  border-bottom: 1px solid var(--ncsp-border);
  padding: 28px 0 22px;
  margin: 0 0 36px;
  font-family: var(--ncsp-sans);
}
.ncsp-hero-in { display: flex; align-items: center; gap: 40px; }
.ncsp-hero-text { flex: 1 1 auto; min-width: 0; }
.ncsp-crumbs { font-size: 13px; color: var(--ncsp-muted); margin: 0 0 22px; }
.ncsp-crumbs a { color: var(--ncsp-muted) !important; text-decoration: none !important; }
.ncsp-crumbs a:hover { color: var(--ncsp-pink) !important; }
.ncsp-crumbs span { margin: 0 8px; color: #C9BFD0; }
.ncsp-eyebrow {
  display: flex; align-items: center; gap: 10px;
  font-size: 12px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase;
  color: var(--ncsp-pink-d); margin: 0 0 8px !important;
}
.ncsp-eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--ncsp-gold); }
.ncsp-title {
  font-family: var(--ncsp-serif) !important; font-size: 46px !important; font-weight: 600 !important;
  line-height: 1.1 !important; color: var(--ncsp-head) !important;
  letter-spacing: 0 !important; text-transform: none !important; margin: 0 0 10px !important;
}
.ncsp-desc { font-size: 15.5px; line-height: 1.65; color: var(--ncsp-text); max-width: 620px; margin: 0 0 8px !important; }
.ncsp-count { font-size: 13px; color: var(--ncsp-muted); margin: 0 !important; }
.ncsp-hero-media { flex: 0 0 220px; }
.ncsp-hero-media img {
  display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center top;
  border-radius: 999px 999px 18px 18px;
  box-shadow: 0 0 0 6px #fff, 0 0 0 7px var(--ncsp-gold);
  margin: 7px;
}

/* ---------- Category chips ---------- */
.ncsp-chips {
  display: flex; gap: 10px; margin-top: 24px; padding: 2px 2px 6px;
  overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.ncsp-chips::-webkit-scrollbar { display: none; }
.ncsp-chip {
  flex: none; display: inline-flex; align-items: center; gap: 8px;
  min-height: 42px; padding: 0 18px; border-radius: 999px;
  background: #fff; border: 1.5px solid var(--ncsp-border);
  color: var(--ncsp-head) !important; font-size: 14px; font-weight: 500; text-decoration: none !important;
  white-space: nowrap; transition: border-color .2s, background .2s, color .2s;
}
.ncsp-chip span { font-size: 12px; color: var(--ncsp-muted); background: var(--ncsp-lilac); border-radius: 999px; padding: 2px 8px; line-height: 1.4; }
.ncsp-chip:hover { border-color: var(--ncsp-pink); color: var(--ncsp-pink) !important; }
.ncsp-chip.is-active { background: var(--ncsp-pink); border-color: var(--ncsp-pink); color: #fff !important; }
.ncsp-chip.is-active span { background: rgba(255, 255, 255, .22); color: #fff; }
.ncsp-chip:focus-visible { outline: 3px solid var(--ncsp-gold); outline-offset: 2px; }

/* ---------- Old title / description hidden (banner replaces them) ---------- */
body.ncsp .woocommerce-products-header,
body.ncsp .ast-archive-description,
body.ncsp .ast-breadcrumbs-wrapper:not(.ncsp-crumbs) { display: none !important; }
body.ncsp .site-content > .ast-container { padding-top: 0 !important; }
body.ncsp #primary { margin-top: 0 !important; }

/* ---------- Notices ---------- */
body.ncsp .woocommerce-notices-wrapper .woocommerce-error,
body.ncsp .woocommerce-notices-wrapper .woocommerce-info,
body.ncsp .woocommerce-notices-wrapper .woocommerce-message {
  border: 1px solid var(--ncsp-border) !important; border-left: 4px solid var(--ncsp-pink) !important;
  border-radius: 12px; background: #fff !important; font: 400 14px/1.6 var(--ncsp-sans);
  color: var(--ncsp-text); padding: 14px 18px 14px 48px !important; margin: 0 0 24px !important;
}
body.ncsp .woocommerce-notices-wrapper .woocommerce-message { border-left-color: var(--ncsp-ok) !important; }

/* ---------- Toolbar (result count + sorting + filters) ---------- */
body.ncsp .woocommerce-result-count,
body.ncsp .woocommerce-ordering { margin: 0 0 24px !important; }
body.ncsp .woocommerce-result-count {
  float: left; font: 400 14px/44px var(--ncsp-sans) !important; color: var(--ncsp-muted) !important;
}
body.ncsp .woocommerce-ordering { float: right; }
body.ncsp .woocommerce-ordering select {
  height: 44px; min-width: 210px; padding: 0 40px 0 16px !important;
  border: 1.5px solid var(--ncsp-border) !important; border-radius: 999px !important;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1A24' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center / 16px !important;
  font: 500 14px var(--ncsp-sans) !important; color: var(--ncsp-head) !important;
  -webkit-appearance: none; appearance: none; box-shadow: none !important; cursor: pointer;
}
body.ncsp .woocommerce-ordering select:focus { outline: 3px solid var(--ncsp-gold); outline-offset: 2px; }
body.ncsp ul.products.ncsp-grid { clear: both; }
.ncsp-filter-btn { display: none; }

/* ---------- Pagination ---------- */
body.ncsp .woocommerce-pagination { text-align: center; margin: 8px 0 24px; }
body.ncsp .woocommerce-pagination ul.page-numbers { display: inline-flex !important; gap: 8px; border: 0 !important; margin: 0 !important; padding: 0 !important; flex-wrap: wrap; justify-content: center; }
body.ncsp .woocommerce-pagination ul.page-numbers li { border: 0 !important; float: none !important; margin: 0 !important; overflow: visible !important; }
body.ncsp .woocommerce-pagination ul.page-numbers li .page-numbers {
  display: flex !important; align-items: center; justify-content: center;
  min-width: 44px; height: 44px; padding: 0 12px !important; border-radius: 999px !important;
  border: 1.5px solid var(--ncsp-border) !important; background: #fff !important;
  color: var(--ncsp-head) !important; font: 500 14px var(--ncsp-sans) !important; text-decoration: none !important; line-height: 1 !important;
}
body.ncsp .woocommerce-pagination ul.page-numbers li a.page-numbers:hover { border-color: var(--ncsp-pink) !important; color: var(--ncsp-pink) !important; }
body.ncsp .woocommerce-pagination ul.page-numbers li span.current { background: var(--ncsp-pink) !important; border-color: var(--ncsp-pink) !important; color: #fff !important; }

/* ---------- Empty state ---------- */
body.ncsp .woocommerce-info.woocommerce-no-products-found,
body.ncsp p.woocommerce-info {
  text-align: center; background: var(--ncsp-soft) !important; border: 0 !important; border-radius: 16px;
  padding: 40px 20px !important; font: 500 15px var(--ncsp-sans); color: var(--ncsp-text);
}
body.ncsp p.woocommerce-info::before { display: none !important; }

/* ---------- Sidebar (filters) ---------- */
body.ncsp #secondary { font-family: var(--ncsp-sans); }
body.ncsp #secondary .widget {
  background: #fff; border: 1px solid var(--ncsp-border); border-radius: 16px;
  padding: 20px !important; margin: 0 0 18px !important;
}
body.ncsp #secondary .widget-title,
body.ncsp #secondary .widget h2,
body.ncsp #secondary .wp-block-heading {
  font-family: var(--ncsp-sans) !important; font-size: 15px !important; font-weight: 600 !important;
  letter-spacing: 0 !important; text-transform: none !important; color: var(--ncsp-head) !important;
  margin: 0 0 14px !important; padding: 0 0 12px !important; border-bottom: 1px solid var(--ncsp-border);
}
/* Search */
body.ncsp #secondary .woocommerce-product-search,
body.ncsp #secondary .wp-block-search__inside-wrapper { display: flex; gap: 8px; position: relative; }
body.ncsp #secondary .woocommerce-product-search .search-field,
body.ncsp #secondary input[type="search"] {
  flex: 1; min-width: 0; height: 44px; border: 1.5px solid var(--ncsp-border) !important; border-radius: 999px !important;
  padding: 0 16px !important; font: 400 14px var(--ncsp-sans) !important; background: #fff !important; box-shadow: none !important;
}
body.ncsp #secondary .woocommerce-product-search .search-field:focus,
body.ncsp #secondary input[type="search"]:focus { border-color: var(--ncsp-pink) !important; outline: none; }
body.ncsp #secondary .woocommerce-product-search button,
body.ncsp #secondary .wp-block-search__button {
  flex: none; width: 44px; height: 44px; min-height: 0 !important; padding: 0 !important; border-radius: 50% !important;
  background: var(--ncsp-pink) !important; border: 0 !important; color: #fff !important; font-size: 0 !important;
  display: flex; align-items: center; justify-content: center; box-shadow: none !important;
}
body.ncsp #secondary .woocommerce-product-search button::before {
  content: ""; width: 18px; height: 18px;
  background: no-repeat center / 18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E");
}
body.ncsp #secondary .woocommerce-product-search button > * { display: none; }
/* Price filter */
body.ncsp #secondary .widget_price_filter .price_slider { margin: 8px 6px 18px !important; }
body.ncsp #secondary .widget_price_filter .ui-slider { height: 4px; background: var(--ncsp-border) !important; border-radius: 4px; border: 0 !important; }
body.ncsp #secondary .widget_price_filter .ui-slider .ui-slider-range { background: var(--ncsp-pink) !important; border-radius: 4px; }
body.ncsp #secondary .widget_price_filter .ui-slider .ui-slider-handle {
  width: 18px !important; height: 18px !important; top: -7px !important; margin-left: -9px;
  border-radius: 50% !important; background: #fff !important; border: 2px solid var(--ncsp-pink) !important;
  box-shadow: 0 1px 4px rgba(29, 20, 38, .2); cursor: grab;
}
body.ncsp #secondary .widget_price_filter .price_slider_amount { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
body.ncsp #secondary .widget_price_filter .price_slider_amount .price_label { order: -1; font-size: 13px; color: var(--ncsp-muted); }
body.ncsp #secondary .widget_price_filter .price_slider_amount .price_label span { color: var(--ncsp-head); font-weight: 600; }
body.ncsp #secondary .widget_price_filter .price_slider_amount .button {
  min-height: 38px; padding: 0 18px !important; border-radius: 999px !important; border: 0 !important;
  background: var(--ncsp-pink) !important; color: #fff !important; font: 600 13px var(--ncsp-sans) !important;
  text-transform: none !important; letter-spacing: 0 !important;
}
/* Category list */
body.ncsp #secondary .widget_product_categories ul,
body.ncsp #secondary .wc-block-product-categories-list { list-style: none; margin: 0 !important; padding: 0 !important; }
body.ncsp #secondary .widget_product_categories ul li,
body.ncsp #secondary .wc-block-product-categories-list-item {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  margin: 0 !important; padding: 0 !important; border: 0 !important;
}
body.ncsp #secondary .widget_product_categories ul li a,
body.ncsp #secondary .wc-block-product-categories-list-item a {
  flex: 1; display: block; padding: 9px 0; color: var(--ncsp-text) !important; font-size: 14px; text-decoration: none !important;
}
body.ncsp #secondary .widget_product_categories ul li a:hover { color: var(--ncsp-pink) !important; }
body.ncsp #secondary .widget_product_categories ul li.current-cat > a,
body.ncsp #secondary .widget_product_categories ul li.current-cat-parent > a { color: var(--ncsp-pink) !important; font-weight: 600; }
body.ncsp #secondary .widget_product_categories .count,
body.ncsp #secondary .wc-block-product-categories-list-item-count {
  font-size: 12px; color: var(--ncsp-muted); background: var(--ncsp-lilac); border-radius: 999px; padding: 2px 9px; line-height: 1.4;
}
body.ncsp #secondary .widget_product_categories ul.children { flex-basis: 100%; padding-left: 14px !important; }
/* Product list (best sellers etc.) */
body.ncsp #secondary ul.product_list_widget { margin: 0 !important; padding: 0 !important; list-style: none; }
body.ncsp #secondary ul.product_list_widget li {
  display: grid !important; grid-template-columns: 56px 1fr; grid-template-rows: auto auto; column-gap: 12px;
  padding: 10px 0 !important; margin: 0 !important; border-bottom: 1px solid var(--ncsp-border); align-items: center;
}
body.ncsp #secondary ul.product_list_widget li:last-child { border-bottom: 0; }
body.ncsp #secondary ul.product_list_widget li a { display: contents !important; color: var(--ncsp-head) !important; text-decoration: none !important; }
body.ncsp #secondary ul.product_list_widget li img {
  grid-row: 1 / 3; grid-column: 1; width: 56px !important; height: 72px !important; max-width: none !important;
  object-fit: cover; object-position: center top; border-radius: 8px; margin: 0 !important; float: none !important;
}
body.ncsp #secondary ul.product_list_widget li .product-title { grid-column: 2; font-size: 13.5px; font-weight: 500; line-height: 1.4; align-self: end; }
body.ncsp #secondary ul.product_list_widget li .star-rating { grid-column: 2; font-size: 11px; margin: 2px 0 !important; }
body.ncsp #secondary ul.product_list_widget li > .woocommerce-Price-amount,
body.ncsp #secondary ul.product_list_widget li > del,
body.ncsp #secondary ul.product_list_widget li > ins,
body.ncsp #secondary ul.product_list_widget li > span:not(.product-title) { grid-column: 2; font-size: 13px; }
body.ncsp #secondary ul.product_list_widget li ins { text-decoration: none; color: var(--ncsp-pink); font-weight: 600; }
body.ncsp #secondary ul.product_list_widget li del { color: var(--ncsp-muted); margin-right: 4px; }
body.ncsp #secondary ul.product_list_widget li a:hover .product-title { color: var(--ncsp-pink); }
/* Layered nav / attribute filters */
body.ncsp #secondary .woocommerce-widget-layered-nav-list { margin: 0 !important; padding: 0 !important; list-style: none; }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li { padding: 7px 0 !important; border: 0 !important; display: flex; justify-content: space-between; font-size: 14px; }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li a { color: var(--ncsp-text) !important; text-decoration: none !important; }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li.chosen a { color: var(--ncsp-pink) !important; font-weight: 600; }
.ncsp-drawer-head { display: none; }
/* Attribute / variation filters (WooCommerce widgets + blocks) */
body.ncsp #secondary input[type="checkbox"],
body.ncsp #secondary input[type="radio"] { accent-color: var(--ncsp-pink); width: 18px; height: 18px; }
body.ncsp #secondary .woocommerce-widget-layered-nav-dropdown,
body.ncsp #secondary .wc-block-components-dropdown-selector__input-wrapper,
body.ncsp #secondary select {
  width: 100%; min-height: 44px; border: 1.5px solid var(--ncsp-border) !important; border-radius: 10px !important;
  padding: 0 12px; background: #fff; font: 400 14px var(--ncsp-sans);
}
body.ncsp #secondary .wc-block-components-checkbox-list li,
body.ncsp #secondary .wc-block-checkbox-list li { padding: 5px 0; font-size: 14px; }
body.ncsp #secondary .wc-block-components-checkbox .wc-block-components-checkbox__input:checked { background: var(--ncsp-pink); border-color: var(--ncsp-pink); }
body.ncsp #secondary .wc-block-components-filter-reset-button,
body.ncsp #secondary .wc-block-components-filter-submit-button { color: var(--ncsp-pink) !important; font-weight: 600; }
body.ncsp #secondary .widget_layered_nav_filters ul,
body.ncsp #secondary .wc-block-active-filters__list { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 !important; padding: 0 !important; }
body.ncsp #secondary .widget_layered_nav_filters ul li a {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px;
  background: var(--ncsp-soft); color: var(--ncsp-pink) !important; font-size: 13px; text-decoration: none !important;
}
/* Size / colour filter as chips (layered nav list) */
body.ncsp #secondary .woocommerce-widget-layered-nav-list { display: flex; flex-wrap: wrap; gap: 8px; }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li { padding: 0 !important; }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li a {
  display: inline-flex; align-items: center; min-height: 38px; padding: 0 14px; border-radius: 10px;
  border: 1.5px solid var(--ncsp-border); background: #fff; font-size: 13.5px;
}
body.ncsp #secondary .woocommerce-widget-layered-nav-list li a:hover { border-color: var(--ncsp-pink); }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li.chosen a { border-color: var(--ncsp-pink); background: var(--ncsp-soft); }
body.ncsp #secondary .woocommerce-widget-layered-nav-list li .count { display: none; }

/* =========================  TABLET  ========================= */
@media (max-width: 1024px) {
  ul.products.ncsp-grid { grid-template-columns: repeat(var(--ncsp-cols-t, 3), minmax(0, 1fr)) !important; }
  .ncsp-title { font-size: 38px !important; }
  .ncsp-hero-media { flex-basis: 180px; }
}

/* Mobile/tablet filter drawer (Astra sidebar ~921px par neeche chala jata hai) */
@media (max-width: 921px) {
  body.ncsp.ncsp-has-sidebar .ncsp-filter-btn {
    display: inline-flex; align-items: center; gap: 8px;
    float: left; height: 44px; padding: 0 18px; margin: 0 10px 24px 0;
    border: 1.5px solid var(--ncsp-head); border-radius: 999px; background: #fff; color: var(--ncsp-head);
    font: 600 14px var(--ncsp-sans); cursor: pointer;
  }
  body.ncsp.ncsp-has-sidebar .woocommerce-result-count { display: none; }
  body.ncsp.ncsp-has-sidebar #secondary {
    position: fixed !important; top: 0; bottom: 0; left: 0; z-index: 99999;
    width: min(360px, 88vw) !important; max-width: none !important; margin: 0 !important;
    padding: 0 16px 24px !important; background: #fff; overflow-y: auto;
    transform: translateX(-105%); transition: transform .3s ease; box-shadow: 0 0 40px rgba(29, 20, 38, .2);
    border: 0 !important;
  }
  body.ncsp.ncsp-filters-open #secondary { transform: none; }
  body.ncsp.ncsp-has-sidebar #secondary .widget { border: 0; border-bottom: 1px solid var(--ncsp-border); border-radius: 0; padding: 18px 4px !important; margin: 0 !important; }
  .ncsp-drawer-head {
    display: flex; justify-content: space-between; align-items: center;
    position: sticky; top: 0; z-index: 2; background: #fff;
    padding: 14px 4px; border-bottom: 1px solid var(--ncsp-border); margin: 0 -4px;
    font: 600 18px var(--ncsp-sans); color: var(--ncsp-head);
  }
  .ncsp-drawer-close { width: 44px; height: 44px; border: 0 !important; background: none !important; font-size: 28px !important; line-height: 1; color: var(--ncsp-head) !important; cursor: pointer; padding: 0 !important; }
  .ncsp-backdrop { position: fixed; inset: 0; background: rgba(29, 20, 38, .5); z-index: 99998; opacity: 0; pointer-events: none; transition: opacity .3s; }
  body.ncsp-filters-open .ncsp-backdrop { opacity: 1; pointer-events: auto; }
  body.ncsp-filters-open { overflow: hidden; }
}

/* =========================  MOBILE  ========================= */
@media (max-width: 767px) {
  ul.products.ncsp-grid { grid-template-columns: repeat(var(--ncsp-cols-m, 2), minmax(0, 1fr)) !important; gap: 24px 12px !important; }
  .ncsp-grid .ncp-card .ncp-title,
  .ncsp-grid .ncp-card .ncp-title a { font-size: 13.5px !important; }
  .ncsp-grid .ncp-price { font-size: 15px; }
  .ncsp-grid .ncp-btn { min-height: 44px; font-size: 13px !important; padding: 0 10px !important; }
  .ncsp-grid .ncp-badges { top: 8px; left: 8px; }
  .ncsp-grid .ncp-badge { font-size: 10px; padding: 5px 7px; }
  .ncsp-grid .ncp-media { border-radius: 12px; }

  .ncsp-wrap { padding: 0 16px; }
  .ncsp-hero { padding: 18px 0 16px; margin-bottom: 24px; }
  .ncsp-hero-in { gap: 16px; }
  .ncsp-crumbs { margin-bottom: 14px; font-size: 12px; white-space: nowrap; overflow-x: auto; }
  .ncsp-title { font-size: 30px !important; }
  .ncsp-desc { font-size: 14px; }
  .ncsp-hero-media { flex-basis: 96px; align-self: flex-start; margin-top: 30px; }
  .ncsp-hero-media img { box-shadow: 0 0 0 4px #fff, 0 0 0 5px var(--ncsp-gold); margin: 5px; }
  .ncsp-chips { margin: 18px -16px 0; padding: 2px 16px 6px; gap: 8px; }
  .ncsp-chip { min-height: 40px; padding: 0 14px; font-size: 13.5px; }
  body.ncsp .woocommerce-ordering { float: right; }
  body.ncsp .woocommerce-ordering select { min-width: 0; width: 170px; }
  body.ncsp .woocommerce-result-count { float: none; display: block; line-height: 1.4 !important; margin-bottom: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .ncsp-grid .ncp-media .ncp-img, .ncsp-grid .ncp-btn, body.ncsp #secondary, .ncsp-backdrop { transition: none !important; }
}
