/* Cautarea: autocomplete (header + pagina) si pagina de rezultate (/cautare) */

.search-container, .search-page-form { position: relative; }

/* --- autocomplete --- */
.search-ac {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    z-index: 1100;
    width: min(460px, 92vw);
    max-height: 70vh;
    overflow-y: auto;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 16px 40px rgba(7, 33, 70, .3);
    padding: 6px 0;
    text-align: left;
}
.search-page-form .search-ac { left: 0; right: auto; width: 100%; }
.search-ac-group {
    padding: 10px 16px 4px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #6b7a90;
}
.search-ac-group i { color: var(--accent-teal); margin-right: 4px; }
.search-ac-item, .search-ac-all {
    display: block;
    padding: 8px 16px;
    color: var(--primary-blue);
    text-decoration: none;
}
.search-ac-item:hover, .search-ac-item.is-active,
.search-ac-all:hover, .search-ac-all.is-active { background: #EEF9F9; color: var(--primary-blue); }
.search-ac-title { display: block; font-size: 15px; font-weight: 600; }
.search-ac-meta { display: block; font-size: 13px; color: #6b7a90; font-family: 'BentonSansBBVAlight'; }
.search-ac-all { border-top: 1px solid #e5e9ef; margin-top: 6px; font-weight: 700; font-size: 14px; }
.search-ac-empty { padding: 12px 16px; font-size: 14px; color: #6b7a90; }
.search-ac mark, .search-page mark { background: #D5F5F5; color: inherit; padding: 0 1px; border-radius: 2px; }

/* --- pagina de rezultate --- */
.search-page-form { display: flex; gap: 10px; }
.search-page-form input[type=search] {
    flex: 1;
    height: 56px;
    border: none;
    border-radius: 4px;
    padding: 0 18px;
    font-size: 18px;
    color: var(--primary-blue);
}
.search-page-form .btn { min-width: 140px; }

.search-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.search-filters a {
    border: 1px solid rgba(255, 255, 255, .5);
    border-radius: 20px;
    padding: 5px 14px;
    color: #fff;
    font-size: 15px;
}
.search-filters a span { opacity: .7; margin-left: 4px; }
.search-filters a.active, .search-filters a:hover { background: var(--accent-teal); border-color: var(--accent-teal); color: var(--primary-blue); }

.search-page { color: var(--primary-blue); }
.search-group { margin-bottom: 50px; }
.search-group-title { font-size: 26px; font-weight: 700; margin-bottom: 18px; display: flex; align-items: center; gap: 10px; }
.search-group-title i { color: var(--accent-teal); font-size: 22px; }
.search-group-count { font-size: 15px; font-weight: 600; background: #EEF1F5; border-radius: 12px; padding: 2px 10px; }
.search-list { list-style: none; margin: 0; padding: 0; }
.search-item { padding: 16px 0; border-bottom: 1px solid #e5e9ef; list-style: none; }
.search-item-title { font-size: 20px; font-weight: 700; color: var(--primary-blue); text-decoration: underline; text-underline-offset: 3px; }
.search-item-title:hover { color: #1f9e9f; }
.search-item-meta { margin: 4px 0 0; font-size: 14px; color: #6b7a90; }
.search-item-excerpt { margin: 6px 0 0; font-size: 16px; line-height: 1.45; font-family: 'BentonSansBBVAlight'; }
.search-item-links { margin: 6px 0 0; font-size: 14px; }
.search-item-links a { color: var(--primary-blue); text-decoration: underline; margin-right: 14px; }
.search-ext { font-size: 11px; opacity: .6; }
.search-group-more { display: inline-block; margin-top: 14px; font-weight: 700; color: var(--primary-blue); }
.search-group-more:hover { color: #1f9e9f; }
.search-empty { background: #F3F5F7; border-radius: 6px; padding: 22px 25px; font-size: 17px; margin-bottom: 30px; }
.search-empty a { color: var(--primary-blue); text-decoration: underline; }
.search-quick { display: flex; flex-wrap: wrap; gap: 10px; padding: 0; }
.search-quick li { list-style: none; }
.search-quick a { display: inline-block; background: #F3F5F7; border-radius: 20px; padding: 8px 16px; color: var(--primary-blue); }
.search-quick a:hover { background: var(--accent-teal); }
.search-pagination { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.search-pagination a, .search-pagination span {
    min-width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center;
    border-radius: 4px; border: 1px solid #d3dae3; color: var(--primary-blue); font-weight: 600;
}
.search-pagination span { background: var(--primary-blue); border-color: var(--primary-blue); color: #fff; }

@media (max-width: 575px) {
    .search-page-form { flex-direction: column; }
    .search-page-form .btn { width: 100%; }
    .search-item-title { font-size: 18px; }
}
