/* Подсказки используют токены существующей шапки и остаются в её stacking context. */
.catalog-autocomplete-wrap { position: relative; }
.catalog-autocomplete {
    position: absolute; inset-inline: 0; top: calc(100% + .375rem);
    z-index: var(--catalog-z-mega-header); max-height: 25rem; overflow-y: auto; overscroll-behavior: contain; scroll-padding-block-end: 3.25rem;
    border: 1px solid var(--catalog-border-soft); border-radius: var(--catalog-radius);
    background: var(--catalog-surface-card); color: var(--catalog-text-primary); box-shadow: var(--catalog-shadow-hover);
}
.catalog-autocomplete[hidden] { display: none; }
.catalog-autocomplete-list { margin: 0; padding: .25rem; list-style: none; }
.catalog-autocomplete-list + .catalog-autocomplete-list { border-top: 1px solid var(--catalog-border-soft); }
.catalog-autocomplete-link { display: flex; align-items: center; gap: .75rem; min-width: 0; padding: .5rem; text-decoration: none; color: inherit; }
.catalog-autocomplete-link:hover, .catalog-autocomplete-link:focus-visible { background: var(--catalog-surface-field-focus); }
.catalog-autocomplete-link:focus-visible { outline: .125rem solid var(--catalog-color-primary); outline-offset: -.125rem; }
.catalog-autocomplete-image { width: 2.5rem; height: 2.5rem; flex: 0 0 2.5rem; object-fit: contain; background: var(--catalog-surface-canvas) url('../images/placeholder.svg') center / contain no-repeat; }
.catalog-autocomplete-copy { min-width: 0; }
.catalog-autocomplete-title { display: block; overflow-wrap: anywhere; font-weight: 600; font-size: .875rem; line-height: 1.4; }
.catalog-autocomplete-detail { display: block; margin-top: .125rem; font-size: .8125rem; line-height: 1.4; }
.catalog-autocomplete-category { color: var(--catalog-text-secondary); }
.catalog-autocomplete-message { margin: 0; padding: .875rem; font-size: .875rem; }
.catalog-autocomplete-all { display: block; padding: .75rem; min-height: 2.75rem; border-top: 1px solid var(--catalog-border-soft); background: var(--catalog-surface-card); color: var(--catalog-color-primary); font-size: .875rem; font-weight: 600; }
