[data-agri-search] { position: relative; }
.agri-search-popup[hidden], .agri-results [hidden] { display: none !important; }
.agri-search-popup {
    position: absolute; inset: calc(100% + 5px) 0 auto; z-index: 30;
    background: #fff; color: #242424; border: 1px solid #ddd; border-radius: 6px;
    box-shadow: 0 5px 14px #0002; max-height: min(62vh, 540px); overflow-y: auto;
    overscroll-behavior: contain; text-align: left;
}
.agri-search-popup a, .agri-results a.agri-search-product { color: #242424; text-decoration: none; }
.agri-search-product { display: flex; align-items: center; gap: 12px; min-width: 0; }
.agri-search-popup .agri-search-product { min-height: 56px; padding: 6px 12px; border-bottom: 1px solid #eee; }
.agri-search-popup .agri-search-product img { width: 44px; height: 44px; object-fit: contain; flex: none; }
.agri-search-detail { display: grid; gap: 3px; line-height: 1.4; overflow-wrap: anywhere; font-size: 13px; }
.agri-search-detail small { font-size: 12px; color: #555; }
.agri-search-routes:empty { display: none; }
.agri-search-label, .agri-search-empty { margin: 0; padding: 10px 12px 3px; font-size: 12px; color: #555; }
.agri-search-empty { padding-bottom: 10px; }
.agri-search-popup .agri-search-routes a, .agri-search-all { display: block; padding: 8px 12px; font-size: 13px; }
.agri-search-all { border-top: 1px solid #eee; font-weight: 700; }
.agri-search-popup a:hover, .agri-search-popup a[aria-selected="true"] { background: #f3f3f3; color: #161616; }
.agri-search-sr { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.agri-results { width: min(1200px, calc(100% - 32px)); margin: 30px auto 56px; }
.agri-results > .search-form { float: none; width: min(100%, 560px); margin: 0 0 20px; }
.agri-results > .search-form .search-field { width: 100%; margin: 0; padding-right: 52px; }
.agri-results .search-submit, #mobile-navigation.agri-mobile-menu .search-submit { height: 48px; bottom: auto; }
.agri-results > .search-form .search-submit { position: absolute; top: 0; right: 0; padding: 0 12px; }
.agri-results > [data-search-routes] a { display: inline-block; margin: 4px 16px 8px 0; text-decoration: underline; }
.agri-results > [data-search-routes] p { padding-left: 0; }
.agri-results [data-search-filters] { display: flex; align-items: end; flex-wrap: wrap; gap: 12px 18px; margin: 16px 0 24px; }
.agri-results [data-search-filters] label { margin: 0; font-size: 13px; }
.agri-results [data-search-filters] select, .agri-results [data-search-filters] input[type="number"] { display: block; margin: 4px 0 0; max-width: 240px; }
.agri-results [data-search-filters] input[type="number"] { width: 105px; }
.agri-results [data-search-products] { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(160px, 43vw), 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.agri-results [data-search-products] li { margin: 0; padding: 0; }
.agri-results [data-search-products] .agri-search-product { display: grid; height: 100%; align-content: start; padding: 10px; border: 1px solid #e6e6e6; border-radius: 4px; }
.agri-results [data-search-products] img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; }
.agri-results [data-search-pages] { display: flex; justify-content: center; align-items: center; gap: 16px; margin-top: 24px; }
.agri-results [data-search-pages] button { border: 1px solid #ccc; background: #fff; color: #242424; padding: 7px 12px; }
.agri-results [data-search-pages] button:disabled { opacity: .45; }
#mobile-navigation .agri-search-popup { position: relative; inset: auto; margin-top: 5px; max-height: none; }
#mobile-navigation:not(.agri-mobile-menu) #mob-search .search-field { min-height: 48px; padding-right: 60px; }
#mobile-navigation:not(.agri-mobile-menu) #mob-search .search-submit { height: 48px; bottom: auto; color: #003566; box-shadow: none; }
