.catalog-toolbar-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; min-width:0; }
.catalog-view-switcher { display:inline-flex; flex-shrink:0; gap:3px; padding:3px; border:1px solid #e5e2dc; border-radius:7px; background:#fff; }
.catalog-view-switcher a { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; padding:0 10px; border-radius:5px; color:#74777a; font-size:12px; white-space:nowrap; }
.catalog-view-switcher a[aria-current="page"] { background:#f2efe8; color:#574827; font-weight:650; }
.catalog-view-switcher svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.5; }
.catalog-view-switcher a:last-child svg { fill:none; }
.catalog-product-list.is-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:14px; padding:18px 0; }
.catalog-product-list.is-grid > .catalog-product-card { min-width:0; border-color:#e8e5df; border-radius:9px; }
.catalog-product-list.is-grid .catalog-product-card .product-card__visual { height:165px; }
.catalog-product-list.is-grid .catalog-product-card__image { width:100%; height:150px; padding:0; object-fit:contain; object-position:center; }
.catalog-product-list.is-grid .catalog-product-card .product-card__info { padding:12px; }
.catalog-product-list.is-grid .catalog-product-card .product-card__info > small { font-size:11px; }
.catalog-product-list.is-grid .catalog-product-card .product-card__info > b { min-height:48px; font-size:14px; line-height:1.5; }
.catalog-product-list.is-grid .catalog-product-card__brand { font-size:12px; }
.catalog-product-list.is-grid .catalog-product-card__description { min-height:36px; font-size:11px; }
.catalog-product-list.is-grid .catalog-product-card .product-selection-actions { flex-wrap:wrap; }
.catalog-sample-tile { overflow:hidden; min-width:0; border:1px solid #e8e5df; border-radius:9px; background:#fff; }
.catalog-sample-tile > a { display:block; height:100%; color:inherit; }
.catalog-sample-tile__photo { display:grid; min-height:220px; place-items:center; background:#f7f6f2; color:#99958c; font-size:12px; }
.catalog-sample-tile__body { display:grid; gap:8px; padding:15px; }
.catalog-sample-tile__body small { color:#85817a; font-size:11px; }
.catalog-sample-tile__body b { color:#303236; font-size:14px; line-height:1.5; }
.catalog-sample-tile__body > span { color:#8a867d; font-size:12px; }
.dealer-product-list.is-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; gap:14px; padding-top:18px; }
.dealer-tile { display:flex; min-width:0; flex-direction:column; overflow:hidden; border:1px solid #e7e4de; border-radius:10px; background:#fff; }
.dealer-tile__photo { display:flex; height:230px; align-items:center; justify-content:center; padding:14px; color:#999da1; font-size:12px; }
.dealer-tile__photo img { display:block; width:100%; height:100%; object-fit:contain; }
.dealer-tile__body { display:flex; flex:1; flex-direction:column; padding:14px; border-top:1px solid #efede8; }
.dealer-tile__title { display:block; min-height:44px; color:#30353a; font-size:14px; font-weight:650; line-height:1.55; }
.dealer-tile__title:hover { color:#97753c; }
.dealer-tile .dealer-row__brand { margin:6px 0 12px; }
.dealer-tile .dealer-row__stock-label { margin:0 0 8px; }
.dealer-tile__stocks { display:grid; gap:5px; min-height:38px; margin-bottom:14px; }
.dealer-tile__stocks > div { display:flex; justify-content:space-between; gap:8px; font-size:11px; }
.dealer-tile__stocks > div span,.dealer-tile__stocks small { color:#82868a; }
.dealer-tile__stocks > div b { color:#4f565d; font-weight:600; white-space:nowrap; }
.dealer-tile__price { margin-top:auto; padding-top:12px; border-top:1px solid #efede8; }
.dealer-tile__price small { display:block; margin-bottom:4px; color:#989a9d; font-size:10px; }
.dealer-tile__price strong { color:#30353a; font-size:19px; line-height:1.4; }
.dealer-tile__price strong span { font-size:13px; font-weight:500; }
.dealer-tile .dealer-quantity { margin-top:12px; }
@media(max-width:1300px) {
  .dealer-product-list.is-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(max-width:1100px) {
  .dealer-product-list.is-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:900px) {
  .catalog-product-list.is-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .catalog-list-toolbar { align-items:flex-start; }
  .catalog-toolbar-actions { flex-wrap:wrap; gap:9px; }
  .catalog-view-switcher a { min-height:32px; padding-inline:8px; font-size:11px; }
  .catalog-product-list.is-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding-top:12px; }
  .catalog-product-list.is-grid .catalog-product-card .product-card__visual { height:135px; }
  .catalog-product-list.is-grid .catalog-product-card__image { height:120px; }
  .catalog-product-list.is-grid .catalog-product-card .product-card__info { padding:10px; }
  .catalog-product-list.is-grid .catalog-product-card .product-card__info > b { min-height:0; font-size:12px; }
  .catalog-product-list.is-grid .catalog-product-card__description { display:none; }
  .catalog-sample-tile__photo { min-height:160px; }
  .catalog-sample-tile__body { padding:11px; }
  .catalog-sample-tile__body b { font-size:12px; }
  .dealer-product-list.is-grid { gap:10px; padding-top:12px; }
  .dealer-tile__photo { height:180px; padding:10px; }
  .dealer-tile__body { padding:10px; }
  .dealer-tile__title { min-height:0; font-size:12px; }
  .dealer-tile .dealer-row__sku { font-size:10px; }
  .dealer-tile__stocks > div { font-size:10px; }
  .dealer-tile .dealer-quantity__controls { flex-wrap:wrap; }
  .dealer-tile .dealer-quantity__controls input { width:100%; }
  .dealer-tile .dealer-quantity__controls button { flex-basis:100%; }
}
@media(max-width:370px) {
  .catalog-view-switcher a { gap:4px; padding-inline:6px; }
  .catalog-toolbar-actions { justify-content:flex-start; }
  .catalog-product-list.is-grid,.dealer-product-list.is-grid { grid-template-columns:1fr; }
  .dealer-tile__photo { height:220px; }
}
