/*
 * IndoVel Ventures - Autocomplete Search Dropdown Styles
 * Loaded AFTER style.min.css — highest priority, no !important needed on most rules.
 * Works WITH the template's .search-popup (300px fixed banner at top).
 *
 * DOM structure when search is open:
 *   .search-popup.active
 *     .search-popup__overlay      (orange background)
 *     .search-popup__content      ← WE ADD position:relative here
 *       <form>
 *         <input id="search">
 *         <button.thm-btn>
 *       </form>
 *       #search-popup-results     ← position:absolute; top:100% anchors here
 */

/* Allow results to overflow the 300px popup banner */
.search-popup {
    overflow: visible !important;
}

/* Dark input wrapper — add position:relative so dropdown anchors to it */
.search-popup__content {
    position: relative !important;
    overflow: visible !important;
}

/* ── White results dropdown ───────────────────────────────────────────────── */
#search-popup-results,
.search-popup__results {
    display: none;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    max-height: 340px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    margin-top: 4px !important;

    background-color: #ffffff !important;
    color: #1e293b !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 0 0 8px 8px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18) !important;

    padding: 6px 0 !important;
    box-sizing: border-box !important;
    z-index: 2147483647 !important;

    /* Smooth appearance */
    animation: none !important;
    transform: none !important;
}

#search-popup-results.active,
.search-popup__results.active {
    display: block !important;
}

/* Scrollbar styling */
#search-popup-results::-webkit-scrollbar { width: 4px; }
#search-popup-results::-webkit-scrollbar-track { background: #f8fafc; }
#search-popup-results::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 2px; }

/* ── Individual suggestion row ───────────────────────────────────────────── */
.autocomplete-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 10px 16px !important;
    text-decoration: none !important;
    border: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    background-color: #ffffff !important;
    color: #1e293b !important;
    cursor: pointer !important;
    transition: background-color 0.12s ease !important;
    line-height: 1.4 !important;
}
.autocomplete-item:last-of-type {
    border-bottom: none !important;
}
.autocomplete-item:hover,
.autocomplete-item.selected {
    background-color: #f0f9ff !important;
}

/* Search icon column */
.autocomplete-icon {
    font-size: 13px !important;
    color: #94a3b8 !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    line-height: 1 !important;
}

/* Text content column */
.autocomplete-content {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

/* Title row: name + category badge side by side */
.autocomplete-title-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 3px !important;
    flex-wrap: nowrap !important;
}

/* Product / page name */
.autocomplete-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    flex-shrink: 1 !important;
    line-height: 1.3 !important;
}
.autocomplete-item:hover .autocomplete-title,
.autocomplete-item.selected .autocomplete-title {
    color: #f4a261 !important;
}

/* Category badge — small pill on the right */
.autocomplete-badge {
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #92400e !important;
    background-color: #fef3c7 !important;
    border: 1px solid #fde68a !important;
    padding: 1px 7px !important;
    border-radius: 20px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    text-transform: capitalize !important;
    letter-spacing: 0.2px !important;
}

/* Short description under the title */
.autocomplete-desc {
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
}

/* "View all X results" footer link */
.autocomplete-view-all {
    display: block !important;
    text-align: center !important;
    padding: 9px 16px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #f4a261 !important;
    text-decoration: none !important;
    border-top: 1px solid #e2e8f0 !important;
    background-color: #fffbf5 !important;
    border-radius: 0 0 8px 8px !important;
}
.autocomplete-view-all:hover {
    color: #e76f51 !important;
    background-color: #fff8f0 !important;
}

/* No results state */
.no-results-box {
    padding: 20px 16px !important;
    text-align: center !important;
}
.no-results-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    margin: 0 0 4px !important;
}
.no-results-sub {
    font-size: 12px !important;
    color: #64748b !important;
    margin: 0 !important;
}

/* Keyword match highlight */
mark.search-highlight {
    background-color: #fef9c3 !important;
    color: #92400e !important;
    font-weight: 700 !important;
    padding: 0 2px !important;
    border-radius: 2px !important;
}
