/* shop.css — catalogue, filters, product cards, wishlist page (shared). */
.shop-layout{display:block}
.shop-toolbar{display:flex;flex-wrap:wrap;gap:.9rem;align-items:flex-end;margin-bottom:1rem}
.field{min-width:170px}.field--grow{flex:1 1 260px}
.check{display:inline-flex;align-items:center;gap:.55rem;min-height:46px;margin:0;font-weight:500;cursor:pointer}
.check input{width:20px;height:20px;min-height:0;accent-color:var(--choc-700)}
.chips{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem 0 .75rem;scrollbar-width:thin}
.chip{flex:0 0 auto;display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:.4rem 1rem;border:1.5px solid var(--warm);border-radius:999px;background:var(--paper);color:var(--choc-700);font:500 var(--fs-0) var(--font-body);cursor:pointer;transition:background-color .2s,color .2s}
.chip:hover{background:var(--blush)}
.chip[aria-pressed="true"]{background:var(--choc-700);border-color:var(--choc-700);color:var(--ivory)}
.chip__n{font-size:.78rem;opacity:.8}
.shop-count{margin:.25rem 0 1rem;color:var(--text-soft)}
.shop-note{padding:.7rem 1rem;border-radius:var(--radius-s);background:var(--blush);border:1px solid var(--line)}
.more{display:flex;justify-content:center;margin-top:1.75rem}
.skeleton-row{display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}
.skeleton{aspect-ratio:4/5;border-radius:var(--radius);background:linear-gradient(100deg,var(--blush) 30%,#fbefe3 50%,var(--blush) 70%) 0 0/200% 100%;animation:shimmer 1.4s linear infinite}
@keyframes shimmer{to{background-position:-200% 0}}

.p-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.pcard-wrap{position:relative}
.pcard{display:flex;flex-direction:column;height:100%;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s}
.pcard:hover{border-color:var(--warm);box-shadow:var(--shadow)}
.pcard__media{position:relative;display:block;aspect-ratio:1/1;background:var(--blush)}
.pcard__media img{width:100%;height:100%;object-fit:cover}
.pcard__badge{position:absolute;left:.5rem;bottom:.5rem;padding:.2rem .6rem;border-radius:999px;background:var(--choc-900);color:var(--ivory);font-size:.78rem}
.pcard__body{display:grid;gap:.25rem;padding:.8rem .9rem 1rem}
.pcard__name{font:600 var(--fs-1)/1.15 var(--font-display);color:var(--choc-700)}
.pcard__desc{font-size:.88rem;color:var(--text-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pcard__price{font-weight:600;color:var(--choc-900)}
.wish{position:absolute;top:.5rem;right:.5rem;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,253,249,.92);color:var(--choc-700);cursor:pointer;box-shadow:0 2px 8px rgba(45,25,16,.18);transition:background-color .2s,color .2s}
.wish:hover{background:var(--blush)}
.wish[aria-pressed="true"]{color:#A3341F}
.wish[aria-pressed="true"] svg{fill:currentColor}
.wish[disabled]{opacity:.6}
.gone-wrap{margin-top:2.5rem}.gone{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px dashed var(--line);border-radius:var(--radius-s);background:var(--paper);margin-bottom:.5rem}
