/* ── Karty F&R (generowane przez JS) ── */
.products-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:16px; }

.product-card {
  background:var(--color-soot); border:1px solid var(--color-ink-soft); border-radius:12px;
  overflow:hidden; text-decoration:none; display:flex; flex-direction:column;
  transition:border-color .2s, box-shadow .2s, transform .2s;
}
.product-card:hover { border-color:var(--color-mint); box-shadow:0 8px 32px rgba(117,218,180,.10); transform:translateY(-3px); }

.product-img {
  position:relative; aspect-ratio:1; overflow:hidden; background:#edf0f5;
  display:flex; align-items:center; justify-content:center;
}
.product-img img { width:100%; height:100%; object-fit:contain; padding:10px; box-sizing:border-box; transition:transform .35s; }
.product-card:hover .product-img img { transform:scale(1.06); }
.img-ph { font-size:48px; display:flex; align-items:center; justify-content:center; width:100%; height:100%; background:#edf0f5; color:#999; }

.trademark-badge {
  position:absolute; bottom:8px; right:8px;
  font-family:var(--font-mono); font-size:8px; font-weight:700; letter-spacing:.06em;
  color:rgba(12,15,22,.7); background:rgba(255,255,255,.85);
  padding:2px 6px; border-radius:3px; pointer-events:none; max-width:90px;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}

.card-badges { position:absolute; top:8px; left:8px; z-index:2; pointer-events:none; }
.badge-new { display:inline-block; padding:3px 8px; background:#75DAB4; color:#0C0F16; font-family:var(--font-mono); font-size:9px; font-weight:700; letter-spacing:.1em; border-radius:4px; }

/* pasek kolorów */
.card-color-bar { padding:7px 10px 6px; display:flex; align-items:center; gap:5px; border-bottom:1px solid var(--color-ink-soft); background:var(--color-soot); }
.color-swatches { display:flex; flex-wrap:wrap; align-items:center; gap:4px; flex:1; }

/* F&R swatche — zdjęcia kolorów z API */
.fr-swatch {
  width:18px; height:18px; border-radius:3px;
  border:2px solid rgba(255,255,255,.15);
  cursor:pointer; padding:0; flex-shrink:0;
  background-size:cover; background-position:center;
  background-color:#888;
  transition:transform .15s, border-color .15s, box-shadow .15s;
}
.fr-swatch:hover { transform:scale(1.3); border-color:rgba(255,255,255,.5); }
.fr-swatch.active { border-color:#fff; box-shadow:0 0 0 2px var(--color-mint); transform:scale(1.1); }
.swatch-more { font-size:9px; color:var(--color-gray-500); font-family:var(--font-mono); }
.color-count { font-family:var(--font-mono); font-size:9px; color:var(--color-gray-600); letter-spacing:.04em; white-space:nowrap; margin-left:auto; }

/* body */
.product-body { padding:8px 10px 10px; display:flex; flex-direction:column; gap:4px; flex:1; }
.product-code { font-family:var(--font-mono); font-size:9px; color:var(--color-gray-600); letter-spacing:.12em; }
.product-name { font-size:12px; font-weight:600; color:var(--color-paper); line-height:1.3; flex:1; }
.product-sizes { font-size:10px; color:var(--color-gray-600); font-family:var(--font-mono); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.product-footer { display:flex; align-items:center; gap:6px; margin-top:6px; padding-top:6px; border-top:1px solid var(--color-ink-soft); }
.product-price { font-size:12px; flex:1; color:var(--color-mint); font-weight:700; }
.btn-wycen { font-size:9px; font-family:var(--font-mono); letter-spacing:.06em; color:var(--color-gray-600); transition:color .15s; white-space:nowrap; }
.product-card:hover .btn-wycen { color:var(--color-mint); }.breadcrumb[data-astro-cid-g3wpi6a5]{padding:20px 0;border-bottom:1px solid var(--color-ink-soft);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--color-gray-600);text-transform:uppercase}.breadcrumb[data-astro-cid-g3wpi6a5] a[data-astro-cid-g3wpi6a5]{color:var(--color-gray-500);text-decoration:none}.breadcrumb[data-astro-cid-g3wpi6a5] a[data-astro-cid-g3wpi6a5]:hover{color:var(--color-mint)}.breadcrumb[data-astro-cid-g3wpi6a5] .sep[data-astro-cid-g3wpi6a5]{margin:0 8px}.breadcrumb[data-astro-cid-g3wpi6a5] .active[data-astro-cid-g3wpi6a5]{color:var(--color-mint)}.catalog-hero[data-astro-cid-g3wpi6a5]{padding:72px 0 56px;background:#080C14;border-bottom:1px solid var(--color-ink-soft);position:relative}.catalog-hero[data-astro-cid-g3wpi6a5]::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(117,218,180,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(117,218,180,.03) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}.catalog-hero[data-astro-cid-g3wpi6a5] .container-main[data-astro-cid-g3wpi6a5]{position:relative;z-index:1}.badge[data-astro-cid-g3wpi6a5]{display:inline-block;padding:4px 10px;background:var(--color-signal-soft);color:var(--color-signal);font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;border-radius:4px;margin-bottom:24px}h1[data-astro-cid-g3wpi6a5].display{font-size:clamp(36px,5vw,72px);letter-spacing:-.03em;line-height:.95;margin-bottom:16px}.sub[data-astro-cid-g3wpi6a5]{font-size:17px;color:var(--color-gray-400);max-width:640px;line-height:1.6;margin-bottom:20px}.brand-pills[data-astro-cid-g3wpi6a5]{display:flex;flex-wrap:wrap;gap:6px}.brand-pills[data-astro-cid-g3wpi6a5] span[data-astro-cid-g3wpi6a5]{font-family:var(--font-mono);font-size:10px;padding:4px 10px;background:var(--color-soot);border:1px solid var(--color-ink-soft);border-radius:20px;color:var(--color-gray-400);letter-spacing:.05em}.brand-pills[data-astro-cid-g3wpi6a5] .more[data-astro-cid-g3wpi6a5]{color:var(--color-mint);border-color:rgba(117,218,180,.3)}.catalog-section[data-astro-cid-g3wpi6a5]{padding:48px 0 100px}.catalog-layout[data-astro-cid-g3wpi6a5]{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start}.catalog-sidebar[data-astro-cid-g3wpi6a5]{position:sticky;top:76px;background:var(--color-soot);border:1px solid var(--color-ink-soft);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:18px}.sidebar-header[data-astro-cid-g3wpi6a5]{display:flex;justify-content:space-between;align-items:center}.clear-filters[data-astro-cid-g3wpi6a5]{background:none;border:none;color:var(--color-mint);font-size:11px;font-family:var(--font-mono);cursor:pointer;padding:0}.filter-group[data-astro-cid-g3wpi6a5]{display:flex;flex-direction:column;gap:8px}.filter-label[data-astro-cid-g3wpi6a5]{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--color-gray-600)}.cat-list[data-astro-cid-g3wpi6a5]{display:flex;flex-direction:column;gap:3px;max-height:220px;overflow-y:auto}.cat-list[data-astro-cid-g3wpi6a5]::-webkit-scrollbar{width:4px}.cat-list[data-astro-cid-g3wpi6a5]::-webkit-scrollbar-thumb{background:var(--color-steel);border-radius:2px}.cat-btn[data-astro-cid-g3wpi6a5]{text-align:left;padding:5px 10px;background:none;border:1px solid transparent;border-radius:6px;font-size:12px;color:var(--color-gray-400);cursor:pointer;transition:all .15s;display:flex;justify-content:space-between;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-btn[data-astro-cid-g3wpi6a5]:hover{color:var(--color-paper);background:var(--color-ink-soft)}.cat-btn[data-astro-cid-g3wpi6a5].active{color:var(--color-mint);border-color:var(--color-mint);background:var(--color-mint-glow)}.cat-count[data-astro-cid-g3wpi6a5]{font-size:10px;color:var(--color-gray-600);font-family:var(--font-mono);flex-shrink:0;margin-left:4px}.cat-skeleton[data-astro-cid-g3wpi6a5]{height:120px;background:var(--color-ink-soft);border-radius:6px;animation:pulse 1.5s ease infinite}@keyframes pulse{0%,100%{opacity:.5}50%{opacity:1}}.price-range[data-astro-cid-g3wpi6a5]{display:flex;align-items:center;gap:8px}.price-input[data-astro-cid-g3wpi6a5]{width:68px;padding:6px 8px;background:var(--color-ink-soft);border:1px solid var(--color-steel);border-radius:6px;color:var(--color-paper);font-size:12px}.price-input[data-astro-cid-g3wpi6a5]:focus{outline:none;border-color:var(--color-mint)}.sort-select[data-astro-cid-g3wpi6a5]{width:100%;padding:7px 10px;background:var(--color-ink-soft);border:1px solid var(--color-steel);border-radius:6px;color:var(--color-paper);font-size:12px;cursor:pointer}.sort-select[data-astro-cid-g3wpi6a5]:focus{outline:none;border-color:var(--color-mint)}.checkbox-filter[data-astro-cid-g3wpi6a5]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-gray-400);cursor:pointer}.checkbox-filter[data-astro-cid-g3wpi6a5] input[data-astro-cid-g3wpi6a5]{accent-color:var(--color-mint)}.catalog-toolbar[data-astro-cid-g3wpi6a5]{display:flex;align-items:center;gap:16px;margin-bottom:20px}.search-box[data-astro-cid-g3wpi6a5]{position:relative;flex:1}.search-input[data-astro-cid-g3wpi6a5]{width:100%;padding:11px 40px 11px 14px;background:var(--color-soot);border:1px solid var(--color-steel);border-radius:8px;color:var(--color-paper);font-size:14px;font-family:var(--font-grotesk);box-sizing:border-box}.search-input[data-astro-cid-g3wpi6a5]:focus{outline:none;border-color:var(--color-mint)}.search-icon[data-astro-cid-g3wpi6a5]{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--color-gray-600);pointer-events:none}.results-count[data-astro-cid-g3wpi6a5]{font-family:var(--font-mono);font-size:11px;color:var(--color-gray-600);white-space:nowrap}.loading-state[data-astro-cid-g3wpi6a5]{grid-column:1/-1;padding:80px 0;display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--color-gray-500);font-size:14px}.loader[data-astro-cid-g3wpi6a5]{width:32px;height:32px;border:2px solid var(--color-ink-soft);border-top-color:var(--color-mint);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-msg[data-astro-cid-g3wpi6a5]{grid-column:1/-1;padding:60px 0;text-align:center;color:var(--color-gray-500);font-size:16px}.error-state[data-astro-cid-g3wpi6a5]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 0}.btn-fallback[data-astro-cid-g3wpi6a5]{padding:10px 20px;background:var(--color-mint);color:var(--color-ink);font-size:12px;font-weight:700;text-decoration:none;border-radius:6px}.pagination[data-astro-cid-g3wpi6a5]{display:flex;gap:6px;justify-content:center;margin-top:28px;flex-wrap:wrap}.pg-btn[data-astro-cid-g3wpi6a5]{width:36px;height:36px;background:var(--color-soot);border:1px solid var(--color-ink-soft);border-radius:6px;color:var(--color-gray-400);font-size:13px;cursor:pointer;transition:all .15s}.pg-btn[data-astro-cid-g3wpi6a5]:hover{border-color:var(--color-mint);color:var(--color-mint)}.pg-btn[data-astro-cid-g3wpi6a5].active{background:var(--color-mint);border-color:var(--color-mint);color:var(--color-ink);font-weight:700}.pg-dots[data-astro-cid-g3wpi6a5]{display:flex;align-items:center;color:var(--color-gray-600);font-size:14px}@media (max-width:1024px){.catalog-layout[data-astro-cid-g3wpi6a5]{grid-template-columns:1fr}.catalog-sidebar[data-astro-cid-g3wpi6a5]{position:static}}@media (max-width:640px){.catalog-toolbar[data-astro-cid-g3wpi6a5]{flex-direction:column;align-items:stretch}}