.kuchen-catalog { width:100%; max-width:var(--ku-width,1300px); margin:0 auto; box-sizing:border-box; }
.kuchen-catalog *, .kuchen-catalog *::before, .kuchen-catalog *::after { box-sizing:border-box; }
.kuchen-catalog .ku-toolbar { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:24px; align-items:center; width:100%; margin:0 0 28px; }
.kuchen-catalog .ku-search { display:flex; height:46px; min-width:0; border:1px solid #d8d8d8; border-radius:8px; background:#fff; overflow:hidden; }
.kuchen-catalog .ku-search input { flex:1; min-width:0; width:100%; height:44px; padding:0 14px; margin:0; border:0; box-shadow:none; border-radius:0; background:transparent; font-size:15px; }
.kuchen-catalog .ku-search button { display:flex; align-items:center; justify-content:center; flex:0 0 48px; min-width:48px; height:44px; padding:0; margin:0; border:0; border-radius:0; background:#fff; color:#111; box-shadow:none; }
.kuchen-catalog .ku-search:focus-within { outline:2px solid #333; outline-offset:2px; }
.kuchen-catalog .ku-arrange { min-width:0; }
.kuchen-catalog .ku-arrange select { width:100%; height:46px; margin:0; padding:0 34px 0 14px; border:1px solid #d8d8d8; border-radius:8px; box-shadow:none; background-color:#fff; color:#222; font-size:15px; }
.kuchen-catalog .ku-arrange select:focus-visible, .kuchen-catalog button:focus-visible, .kuchen-catalog a:focus-visible { outline:2px solid #333; outline-offset:2px; }
.kuchen-catalog .ku-reset { margin:-12px 0 20px; font-size:14px; }
.kuchen-catalog .ku-reset a { text-decoration:underline; }
.kuchen-catalog .ku-results .woocommerce-ordering { display:none !important; }
.kuchen-catalog .ku-results .woocommerce-result-count { float:none; margin:0 0 18px; }
/* Normalize WooCommerce and Flatsome loop gutters so toolbar edges match cards. */
.kuchen-catalog .ku-results .products { display:grid !important; grid-template-columns:repeat(var(--ku-columns,4),minmax(0,1fr)); gap:24px; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; list-style:none; }
.kuchen-catalog .ku-results .products::before, .kuchen-catalog .ku-results .products::after { display:none !important; }
.kuchen-catalog .ku-results .products > .product { float:none !important; width:100% !important; max-width:100% !important; min-width:0; margin:0 !important; padding:0 !important; }
.kuchen-catalog .ku-results .woocommerce-pagination { margin-top:28px; }
@media (max-width:849px) {
  .kuchen-catalog .ku-toolbar { grid-template-columns:minmax(0,1fr) 240px; gap:16px; }
  .kuchen-catalog .ku-results .products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
}
@media (max-width:549px) {
  .kuchen-catalog .ku-toolbar { grid-template-columns:1fr; gap:12px; margin-bottom:22px; }
  .kuchen-catalog .ku-search input, .kuchen-catalog .ku-arrange select { font-size:16px; }
}

.kuchen-catalog .ku-status { margin:0 0 12px; font-size:14px; color:#555; }
.kuchen-catalog .ku-status:empty { display:none; }
.kuchen-catalog.ku-loading .ku-results { opacity:.5; pointer-events:none; }
.kuchen-catalog .ku-results { transition:opacity .15s ease; }
@media (prefers-reduced-motion:reduce) { .kuchen-catalog .ku-results { transition:none; } }
