.pbx-search { position: relative; width: 100%; max-width: 560px; font-family: inherit; }
.pbx-search-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.pbx-search-row { display: flex; gap: 8px; }
.pbx-search-input { flex: 1; min-width: 0; padding: 12px 14px; font-size: 16px; border: 1px solid #ccd3e0; border-radius: 8px; color: #2b3442; }
.pbx-search-input:focus { outline: 3px solid #f5a04a; outline-offset: 1px; border-color: #f26a1b; }
.pbx-search-btn { padding: 12px 18px; background: #f26a1b; color: #fff; border: 0; border-radius: 8px; font-weight: 700; font-size: 15px; cursor: pointer; }
.pbx-search-btn:hover { background: #d95a12; }
.pbx-search-results { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 1000; margin: 0; padding: 6px 0; list-style: none; background: #fff; border: 1px solid #e4e8ef; border-radius: 10px; box-shadow: 0 10px 28px rgba(29,43,79,.16); max-height: 420px; overflow-y: auto; }
.pbx-search-results[hidden] { display: none; }
.pbx-search-results li a { display: flex; align-items: center; gap: 12px; padding: 8px 14px; text-decoration: none; color: #2b3442; }
.pbx-search-results li a:hover, .pbx-search-results li a:focus { background: #f6f7fa; }
.pbx-search-results img { border-radius: 6px; object-fit: cover; flex-shrink: 0; }
.pbx-search-text { display: flex; flex-direction: column; min-width: 0; }
.pbx-search-name { font-weight: 600; color: #1d2b4f; font-size: 14px; line-height: 1.3; }
.pbx-search-price { font-size: 13px; color: #6b7385; }
.pbx-search-empty { padding: 10px 14px; font-size: 14px; color: #6b7385; }
.pbx-search-all a { color: #f26a1b; font-weight: 700; font-size: 14px; padding: 10px 14px; display: block; }
@media (max-width: 600px) { .pbx-search-btn { padding: 12px 14px; } }
