/* Scoped to home and product archives; native forms remain usable without JS. */
body.dks-catalog-ui { --dks-catalog-border:#dddfe4; --dks-catalog-ink:#22252b; }
.dks-catalog-ui .main-container .main { min-width:0; }
.dks-catalog-ui #search_mini_form input[type=search] { font-size:16px; min-height:48px; }
.dks-catalog-ui #search_mini_form button { min-width:48px; min-height:48px; }
.dks-catalog-ui .dks-collection-links { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 24px; }
.dks-catalog-ui .dks-collection-links a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:9px 16px; border:1px solid var(--dks-catalog-border); border-radius:24px; background:#fff; color:var(--dks-catalog-ink); font-size:14px; font-weight:600; text-decoration:none; }
.dks-catalog-ui .dks-collection-links a:hover { border-color:#ed4b83; background:#fff5f8; }
.dks-catalog-ui .dks-home-intro { padding:20px 0 0; margin-bottom:0; }
.dks-catalog-ui .dks-home-intro h1 { font-size:30px; line-height:1.2; margin:8px 0; }
.dks-catalog-ui .dks-home-intro p { margin:0; }
.dks-catalog-ui .dks-home-products-section { margin:24px 0 36px; }
.dks-catalog-ui .dks-home-section-heading { flex-direction:row; align-items:center; width:100%; text-align:left; }
.dks-catalog-ui .dks-home-section-heading > div { flex:1; }
.dks-catalog-ui .dks-home-section-heading > a { margin:0; border:0; text-align:right; }
.dks-catalog-ui .dks-home-section-heading h2 { text-align:left; }
.dks-catalog-ui :is(.products-grid,ul.products) { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px 18px; margin:0!important; padding:0!important; clear:both; }
.dks-catalog-ui :is(.products-grid,ul.products):before,.dks-catalog-ui :is(.products-grid,ul.products):after { display:none!important; }
.dks-catalog-ui :is(.products-grid,ul.products) li.item { box-sizing:border-box; display:flex; flex-direction:column; float:none!important; width:auto!important; min-width:0; margin:0!important; padding:0 0 12px!important; border:1px solid #e7e7eb; border-radius:10px; overflow:hidden; background:#fff; text-align:left; }
.dks-catalog-ui :is(.products-grid,ul.products) .product-image { display:block; width:100%; height:auto!important; aspect-ratio:3/4; overflow:hidden; background:#f7f7f9; margin:0 0 12px!important; }
.dks-catalog-ui :is(.products-grid,ul.products) .product-image img { display:block; width:100%!important; height:100%!important; max-height:none!important; object-fit:contain; }
.dks-catalog-ui :is(.products-grid,ul.products) .product-name { font-size:15px!important; line-height:1.45!important; height:auto!important; min-height:4.35em; margin:0 12px 8px!important; padding:0!important; }
.dks-catalog-ui :is(.products-grid,ul.products) .product-name a { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; color:#22252b; font-weight:600; line-height:inherit; }
.dks-catalog-ui :is(.products-grid,ul.products) .dks-card-meta { display:flex; flex-direction:column; align-items:flex-start; gap:4px; font-size:12px; color:#626671; margin:0 12px 8px; padding:0; overflow-wrap:anywhere; }
.dks-catalog-ui :is(.products-grid,ul.products) .dks-card-meta .sku { font-size:12px!important; }
.dks-catalog-ui :is(.products-grid,ul.products) .price-box { display:flex!important; flex-wrap:wrap; gap:5px 8px; align-items:baseline; margin:auto 12px 10px!important; padding:0!important; min-height:28px; color:#c92d63; font-size:19px; font-weight:700; }
.dks-catalog-ui :is(.products-grid,ul.products) .price-box del { font-size:13px; color:#707580; font-weight:400; }
.dks-catalog-ui :is(.products-grid,ul.products) .price-box ins { text-decoration:none; background:none; }
.dks-catalog-ui :is(.products-grid,ul.products) .price-box .woocommerce-Price-amount { color:inherit; font-size:inherit; }
.dks-catalog-ui :is(.products-grid,ul.products) .price-box .screen-reader-text { position:absolute!important; }
.dks-catalog-ui :is(.products-grid,ul.products) .dks-loop-actions { display:grid!important; grid-template-columns:minmax(0,1fr) 44px; align-items:stretch; gap:6px; margin:0 10px; padding:0!important; }
.dks-catalog-ui :is(.products-grid,ul.products) .dks-loop-actions .button { display:flex; align-items:center; justify-content:center; min-height:44px; height:auto!important; min-width:0; width:auto!important; padding:8px 6px!important; line-height:1.25!important; font-size:13px!important; border-radius:5px; white-space:normal; text-align:center; }
.dks-catalog-ui :is(.products-grid,ul.products) .dks-loop-wishlist { min-width:44px; width:44px; height:44px; box-sizing:border-box; border-radius:5px; margin:0; }
.dks-catalog-ui :is(.products-grid,ul.products) .icon-off { top:8px; right:8px; font-size:12px; }
.dks-catalog-ui .dks-category-title,.dks-catalog-ui .woocommerce-products-header__title { margin:18px 0 12px; font-size:28px; line-height:1.2; }
.dks-catalog-ui details > summary { cursor:pointer; font-weight:700; color:#242730; min-height:48px; box-sizing:border-box; padding:13px 14px; }
.dks-catalog-ui details > summary:focus-visible,.dks-catalog-ui a:focus-visible,.dks-catalog-ui button:focus-visible { outline:3px solid #2c6bad; outline-offset:3px; }
.dks-catalog-ui .dks-collection-about { border-bottom:1px solid var(--dks-catalog-border); margin:0 0 16px; }
.dks-catalog-ui .dks-collection-about > summary { padding-left:0; font-size:14px; color:#5b616e; }
.dks-catalog-ui .dks-category-intro { margin:0 0 12px; }
.dks-catalog-ui .dks-browse-tools { margin:0 0 24px; }
.dks-catalog-ui .dks-results-count { margin:12px 0; font-size:14px; color:#555c69; }
.dks-catalog-ui .dks-catalog-search { display:flex; gap:8px; margin:0 0 8px; max-width:720px; }
.dks-catalog-ui .dks-catalog-search input { flex:1; min-width:0; width:100%; }
.dks-catalog-ui .dks-browse-tools input[type=search],.dks-catalog-ui .dks-browse-tools input[type=number],.dks-catalog-ui .dks-browse-tools select { box-sizing:border-box; min-height:48px; height:48px; border:1px solid #aeb4bf; border-radius:5px; background:#fff; color:#242730; padding:10px 12px; font-size:16px; width:100%; max-width:100%; }
.dks-catalog-ui .dks-browse-tools button { min-height:48px; padding:10px 18px; background:#d8326a; color:#fff; font-size:15px; font-weight:700; border:0; border-radius:5px; cursor:pointer; }
.dks-catalog-ui .dks-search-all { display:inline-block; padding:5px 0 12px; font-size:13px; color:#555c69; text-decoration:underline; }
.dks-catalog-ui .dks-filter-panel,.dks-catalog-ui .dks-category-picker { border:1px solid var(--dks-catalog-border); border-radius:8px; background:#fff; margin-top:10px; }
.dks-catalog-ui .dks-filter-count { display:inline-block; margin-left:8px; padding:2px 8px; color:#a82050; background:#fff0f5; border-radius:15px; font-size:12px; }
.dks-catalog-ui .dks-filter-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding:18px; border-top:1px solid var(--dks-catalog-border); }
.dks-catalog-ui .dks-filter-form label,.dks-catalog-ui .dks-category-picker > label { display:block; font-size:14px; font-weight:600; color:#454b57; margin:0; }
.dks-catalog-ui .dks-filter-form label > select,.dks-catalog-ui .dks-filter-form label > input:not([type=checkbox]),.dks-catalog-ui .dks-category-find { margin-top:6px; }
.dks-catalog-ui .dks-price-range { border:0; margin:0; padding:0; min-width:0; }
.dks-catalog-ui .dks-price-range legend { margin:0 0 6px; padding:0; font-size:14px; font-weight:600; }
.dks-catalog-ui .dks-price-range > div { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.dks-catalog-ui .dks-price-range label { font-size:12px; font-weight:400; }
.dks-catalog-ui .dks-filter-form .dks-filter-check { display:flex; align-items:center; gap:10px; min-height:44px; }
.dks-catalog-ui .dks-filter-check input { width:20px; height:20px; accent-color:#d8326a; }
.dks-catalog-ui .dks-filter-actions { grid-column:1/-1; display:flex; align-items:center; gap:20px; }
.dks-catalog-ui .dks-filter-actions a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; }
.dks-catalog-ui .dks-filter-error { grid-column:1/-1; color:#b12424; margin:0; }
.dks-catalog-ui .dks-filter-error:empty { display:none; }
.dks-catalog-ui .dks-active-filters { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.dks-catalog-ui .dks-active-filters a { display:inline-flex; align-items:center; gap:14px; min-height:44px; padding:6px 12px; border:1px solid #edb2c6; background:#fff6f9; border-radius:22px; color:#842843; }
.dks-catalog-ui .dks-category-picker > label,.dks-catalog-ui .dks-category-match { margin:10px 16px; }
.dks-catalog-ui .dks-category-picker .dks-shop-by-category { margin:12px 16px 16px; border:0; box-shadow:none; padding:0; }
.dks-catalog-ui .dks-category-picker .block-title { display:none; }
.dks-catalog-ui .dks-category-picker .block-content { max-height:320px; overflow:auto; padding:0; overscroll-behavior:contain; }
.dks-catalog-ui .dks-category-picker ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px 12px; padding:0; margin:0; }
.dks-catalog-ui .dks-category-picker li { display:flex; align-items:center; gap:4px; float:none; width:auto; margin:0; padding:0; list-style:none; background:none; min-width:0; }
.dks-catalog-ui .dks-category-picker li[hidden] { display:none!important; }
.dks-catalog-ui .dks-category-picker li a { display:flex; flex:1; align-items:center; min-height:44px; line-height:1.35; padding:8px 0; overflow-wrap:anywhere; color:#303743; font-size:13px; }
.dks-catalog-ui .dks-category-picker li a:before { display:none; }
.dks-catalog-ui .dks-category-picker li span { flex:none; font-size:11px; color:#646b78; }
.dks-catalog-ui .dks-empty-help { padding:20px; background:#f7f7f9; border-radius:8px; margin:20px 0; }
.dks-catalog-ui .woocommerce-pagination { margin:28px 0!important; }
.dks-catalog-ui .woocommerce-pagination ul { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; border:0!important; }
.dks-catalog-ui .woocommerce-pagination ul li { border:0!important; }
.dks-catalog-ui .woocommerce-pagination ul li a,.dks-catalog-ui .woocommerce-pagination ul li span { box-sizing:border-box; display:flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:10px!important; border-radius:5px; }
@media(min-width:1200px){.dks-catalog-ui :is(.products-grid,ul.products){grid-template-columns:repeat(5,minmax(0,1fr));}}
@media(max-width:760px){
 .dks-catalog-ui .main-container .main { padding-left:12px; padding-right:12px; }
 .dks-catalog-ui .dks-home-intro { padding-top:14px; }
 .dks-catalog-ui .dks-home-intro h1 { font-size:23px; }
 .dks-catalog-ui .dks-home-intro p { font-size:14px; line-height:1.5; }
 .dks-catalog-ui .dks-home-eyebrow { display:none; }
 .dks-catalog-ui .dks-collection-links { gap:6px; margin:14px 0 20px; }
 .dks-catalog-ui .dks-collection-links a { font-size:13px; padding:8px 12px; }
 .dks-catalog-ui .dks-home-products-section { margin:18px 0 28px; }
 .dks-catalog-ui .dks-home-section-heading { gap:10px; margin-bottom:14px; }
 .dks-catalog-ui .dks-home-section-heading h2 { font-size:22px; }
 .dks-catalog-ui .dks-home-section-heading > a { font-size:12px; min-height:44px; display:inline-flex; align-items:center; }
 .dks-catalog-ui :is(.products-grid,ul.products) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 10px; }
 .dks-catalog-ui :is(.products-grid,ul.products) .product-name { font-size:14px!important; margin-left:9px!important; margin-right:9px!important; }
 .dks-catalog-ui :is(.products-grid,ul.products) .dks-card-meta { margin-left:9px; margin-right:9px; }
 .dks-catalog-ui :is(.products-grid,ul.products) .price-box { margin-left:9px!important; margin-right:9px!important; font-size:18px; }
 .dks-catalog-ui :is(.products-grid,ul.products) .dks-loop-actions { margin:0 7px; grid-template-columns:minmax(0,1fr) 44px; gap:4px; }
 .dks-catalog-ui :is(.products-grid,ul.products) .dks-loop-actions .button { font-size:12px!important; }
 .dks-catalog-ui .dks-category-title,.dks-catalog-ui .woocommerce-products-header__title { font-size:24px; }
 .dks-catalog-ui .dks-filter-form { grid-template-columns:1fr; padding:14px; gap:14px; }
 .dks-catalog-ui .dks-filter-actions button { flex:1; }
 .dks-catalog-ui .dks-category-picker ol { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .dks-catalog-ui .dks-results-count { font-size:13px; }
 .dks-catalog-ui .dks-home-assurances { margin-top:28px; }
}
@media(prefers-reduced-motion:reduce){.dks-catalog-ui *{scroll-behavior:auto!important;}}
