.csf-header__search, .csf-mh__search { position: relative; }
.csf-search-results { position: absolute; top: calc(100% + 6px); left: 0; width: 100%; min-width: 240px; max-width: calc(100vw - 24px); max-height: min(480px, 65vh); overflow-y: auto; z-index: 120; background: #fff; color: #141414; border: 1px solid #ddd; border-radius: 6px; box-shadow: 0 6px 18px #0002; text-align: left; }
.csf-search-results[hidden] { display: none !important; }
.csf-mh__search .csf-search-results { left: 12px; width: calc(100% - 24px); }
.csf-search-result { display: grid; grid-template-columns: 44px minmax(0, 1fr); align-items: center; gap: 10px; min-height: 66px; padding: 10px 12px; color: #141414 !important; text-decoration: none !important; border-bottom: 1px solid #eee; }
.csf-search-result:hover, .csf-search-result[aria-selected="true"], .csf-search-all:hover, .csf-search-all[aria-selected="true"] { background: #f2f5f3; }
.csf-search-image { width: 44px; height: 44px; object-fit: contain; }
.csf-search-text { min-width: 0; }
.csf-search-name { display: block; font-size: 15px; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.csf-search-price { display: block; margin-top: 2px; font-size: 14px; line-height: 1.4; }
.csf-search-stock { display: block; color: #9b2c2c; font-size: 13px; line-height: 1.4; }
.csf-search-all { display: block; padding: 12px; color: #1e6b45 !important; font-size: 15px; font-weight: 600; text-align: center; text-decoration: none !important; }
.csf-search-empty { margin: 0; padding: 18px 12px; font-size: 15px; line-height: 1.5; }
