.ulcd-discovery { margin: 0 0 1rem; padding: 1rem; border: 1px solid #dfd9d2; border-radius: 10px; background: #faf8f5; }
.ulcd-form { margin: 0; }
.ulcd-search-row { display: grid; grid-template-columns: 1fr auto; gap: .75rem; align-items: end; }
.ulcd-form label { display: block; color: #292720; font-weight: 600; font-size: .85rem; margin-bottom: .3rem; }
.ulcd-form input,.ulcd-form select { min-height: 44px; margin: 0; background: #fff; color: #282820; border-color: #b6b3ac; }
.ulcd-form .button { min-height: 44px; margin: 0; line-height: 1.3; padding: .7rem 1rem; font-size: .85rem; }
.ulcd-form .button.is-outline { color: #244e43; border: 1px solid #8bada1; background: #fff; }
.ulcd-form .button.is-outline:hover { color: #fff; background: #244e43; border-color: #244e43; }
.ulcd-options { margin-top: .75rem; }
.ulcd-options summary { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 44px; padding: .65rem 0; color: #453d34; font-weight: 600; cursor: pointer; }
.ulcd-options summary::after { content: '+'; font-size: 1.3rem; }
.ulcd-options[open] summary::after { content: '−'; }
.ulcd-fields { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.3fr; gap: .75rem; align-items: end; margin: .4rem 0 .8rem; }
.ulcd-fields .ulcd-available { display: flex; align-items: center; gap: .5rem; min-height: 44px; margin: 0; font-weight: 500; }
.ulcd-available input { width: 18px; height: 18px; min-height: 18px; flex-shrink: 0; }
.ulcd-tools { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: .6rem; font-size: .85rem; }
.ulcd-tools a { min-height: 32px; display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 3px; color: #3a5849; }
.ulcd-form input:focus-visible,.ulcd-form select:focus-visible,.ulcd-form button:focus-visible,.ulcd-form summary:focus-visible,.ulcd-tools a:focus-visible { outline: 2px solid #286757; outline-offset: 3px; }
.ulcd-empty-help { margin: 1rem 0 2rem; max-width: 650px; }
.ulcd-empty-help h2 { font-size: 1.4rem; }
.ulcd-discovery ~ .uleather-shop-links { margin-bottom: 1.25rem; }
.products .product-small .name { min-height: 3.8em; }
.products .product-small .box-image img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #faf9f6; }
.products .product-small .uleather-loop-cta { margin-bottom: .5rem; min-height: 44px; display: flex; align-items: center; justify-content: center; line-height: 1.25; }
@media (max-width: 849px) {
  .ulcd-discovery { padding: .8rem; }
  .ulcd-fields { grid-template-columns: 1fr 1fr; }
  .ulcd-fields > :first-child,.ulcd-fields > :last-child { grid-column: 1 / -1; }
  .shop-page-title.page-title .page-title-inner { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .5rem; align-items: center; min-height: 0; padding-top: 1rem; padding-bottom: 1rem; }
  .shop-page-title .page-title-inner > .flex-col { width: auto; text-align: left !important; }
  .shop-page-title.page-title h1 { font-size: 1.6rem; margin-bottom: .15rem; }
  .shop-page-title .category-filtering { display: none; }
  .shop-page-title .woocommerce-ordering { margin-bottom: 0; }
  .shop-page-title .woocommerce-ordering select { max-width: 175px; font-size: .8rem; margin: 0; }
  .uleather-shop-links { gap: 6px; padding: 10px; }
  .uleather-shop-links a { min-height: 44px; padding: 6px 10px; }
}
@media (max-width: 480px) {
  .ulcd-search-row { grid-template-columns: minmax(0,1fr) auto; gap: .5rem; }
  .ulcd-search-row .button { font-size: .78rem; padding: .6rem .65rem; max-width: 92px; }
  .ulcd-search-row input { font-size: 16px; }
  .ulcd-form select,.ulcd-form input[type="number"] { font-size: 16px; }
  .products .product-small .name { min-height: 5em; }
}
