
/* ===== 404Parker Not Found — All Products layout (v3) ===== */
:root{ --container: 1200px; --gap: 28px; --border:#eaeaea; --muted:#666; }

/* Wrapper width & spacing */
.asp-archive{ width: min(92%, var(--container)); margin: 32px auto 48px; display: grid; grid-template-columns: 280px 1fr; gap: 36px; align-items: start; }

/* Sticky left filters */
.asp-filters{ position: sticky; top: 84px; align-self: start; background:#fff; border:1px solid var(--border); border-radius: 16px; padding: 18px; box-shadow: 0 8px 24px rgba(0,0,0,.03); }
.asp-filter-title{ font-weight: 700; margin: 10px 0 6px; }
.asp-search-field, .asp-search-line{ display:flex; gap:10px; }
.asp-search-field input, .asp-search-line input{ flex:1; padding: 12px 14px; border: 1px solid var(--border); border-radius: 12px; }
.asp-cat-list{ list-style:none; margin:8px 0 12px; padding:0; display:grid; gap:8px; }
.asp-cat-list a, .asp-cat-list label{ display:flex; gap:8px; align-items:center; padding: 10px 12px; border:1px solid var(--border); border-radius: 12px; background:#fff; }
.asp-filter-actions{ display:flex; gap:10px; align-items:center; flex-wrap: wrap; }
.btn-pill{ display:inline-flex; align-items:center; justify-content:center; padding: 10px 16px; border-radius: 999px; border:1px solid var(--border); background:#fff; }
.btn-pill:hover{ background:#f7f7f7; }
.btn-primary{ border-color:#111; background:#111; color:#fff; }
.btn-link{ color:#2a2a2a; text-decoration: underline; }

/* Header on right */
.asp-products-header{ display:flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.asp-products-title{ margin: 0; font-size: 24px; }
.asp-sort select, .asp-sort-form select{ padding: 10px 12px; border:1px solid var(--border); border-radius: 10px; background:#fff; }

/* GRID (supports both custom + plugin-default structures) */
.asp-grid{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--gap); }
.wp-asp-grid .wp-asp-grid-row{ display:grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--gap); }
.wp-asp-grid .wp-asp-grid-item{ margin: 0 !important; width: auto !important; } /* kill inline-block spacings */

/* CARD */
.asp-card, .wp-asp-grid .wp-asp-grid-item{ border:1px solid var(--border); border-radius: 16px; background:#fff; padding: 16px; box-shadow: 0 4px 14px rgba(0,0,0,.04); display:flex; flex-direction:column; gap: 10px; }
.asp-thumb img, .asp-thumb-img, .wp-asp-grid .wp-asp-grid-item img{ width:100%; height:auto; display:block; border-radius: 12px; }
.asp-thumb-ph{ aspect-ratio: 4/3; background:#f5f5f5; border-radius:12px; }
.asp-info{ display:flex; flex-direction: column; gap: 6px; }
.asp-name{ font-weight: 700; font-size: 15px; line-height: 1.5; display:-webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 3.0em; }
.asp-price{ font-weight: 800; font-size: 18px; }
.asp-actions{ margin-top:auto; }
.asp-view button, .btn-pill-full{ width: 100%; border-radius: 999px; border:1px solid var(--border); background:#fff; padding: 12px 16px; }
.asp-view button:hover, .btn-pill-full:hover{ background:#f7f7f7; }

/* Pagination replaced by Load More */
.wp-asp-pagination{ display:none !important; }
.asp-load-more{ display:block; margin: 36px auto 0; padding: 16px 32px; border-radius: 999px; border:1px solid var(--border); background:#fff; box-shadow: 0 6px 18px rgba(0,0,0,.05); }

/* RESPONSIVE */
@media (max-width: 1200px){
  .asp-archive{ grid-template-columns: 260px 1fr; gap: 28px; }
}
@media (max-width: 960px){
  .asp-archive{ grid-template-columns: 1fr; gap: 16px; width: min(94%, 720px); }
  .asp-filters{ display:none; }
  .asp-grid, .wp-asp-grid .wp-asp-grid-row{ grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
  .asp-load-more{ margin-top: 24px; }
}
