/* Scoped to our own widget. The Elementor popup controls the external overlay. */
.ireevo-search { --ireevo-search-left-width:32%; --ireevo-search-image-size:74px; --ireevo-search-red:#ff1010; --ireevo-search-navy:#102b43; --ireevo-search-muted:#62748a; --ireevo-search-border:#d7def1; background:#fff; color:var(--ireevo-search-navy); width:100%; padding:26px 30px; border-radius:18px; box-sizing:border-box; }
.ireevo-search *, .ireevo-search *::before, .ireevo-search *::after { box-sizing:border-box; }
.ireevo-search [hidden] { display:none !important; }
.ireevo-search__title { font-size:27px; line-height:1.2; color:var(--ireevo-search-navy); font-weight:700; margin:0 0 22px; }
.ireevo-search__form { display:flex; align-items:center; gap:12px; padding:5px 5px 5px 18px; min-height:56px; border:1px solid var(--ireevo-search-border); background:#fff; border-radius:999px; transition: border-color .18s, box-shadow .18s; }
.ireevo-search__form:focus-within { border-color:#1849e8; box-shadow:0 0 0 2px rgba(24,73,232,.06); }
.ireevo-search__magnifier { display:flex; align-items:center; color:#18365c; flex:0 0 auto; }
.ireevo-search input.ireevo-search__input { font:inherit; color:var(--ireevo-search-navy); border:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; width:100%; flex:1 1 auto; min-width:0; margin:0; padding:9px 0; height:auto; min-height:38px; border-radius:0; }
.ireevo-search__input::placeholder { color:#7586a2; opacity:1; }
/* WebKit adds its own clear (×) to type=search on hover/focus. Keep ONLY the widget clear button. */
.ireevo-search input.ireevo-search__input::-webkit-search-cancel-button,
.ireevo-search input.ireevo-search__input::-webkit-search-decoration,
.ireevo-search input.ireevo-search__input::-webkit-search-results-button,
.ireevo-search input.ireevo-search__input::-webkit-search-results-decoration { -webkit-appearance:none; appearance:none; display:none; }
.ireevo-search input.ireevo-search__input { -webkit-appearance:none; appearance:none; }
.ireevo-search .ireevo-search__clear { flex:0 0 auto; width:28px; height:28px; display:flex; align-items:center; justify-content:center; border:0; border-radius:50%; color:#556a8a; background:#edf1f9; padding:0; font-size:22px; line-height:1; cursor:pointer; box-shadow:none; }
.ireevo-search .ireevo-search__submit { flex:0 0 auto; width:auto; min-width:125px; min-height:44px; border:0; background:var(--ireevo-search-red); color:#fff; border-radius:999px; padding:9px 24px; font:inherit; font-weight:650; cursor:pointer; box-shadow:none; }
.ireevo-search .ireevo-search__submit:hover { background:#d90000; color:#fff; }
.ireevo-search__initial { margin:28px 0 6px; }
.ireevo-search__section-title { margin:0 0 14px; font-size:16px; font-weight:700; color:var(--ireevo-search-navy); line-height:1.35; }
.ireevo-search__popular { display:flex; flex-wrap:wrap; gap:8px; }
.ireevo-search button.ireevo-search__chip { display:inline-flex; align-items:center; width:auto; font:inherit; font-size:13px; padding:8px 14px; background:#f6f9ff; border:1px solid var(--ireevo-search-border); color:#405679; border-radius:50px; cursor:pointer; box-shadow:none; }
.ireevo-search button.ireevo-search__chip:hover { background:#ebf3ff; color:#1238c4; }
.ireevo-search__live { margin:24px 0 0; max-height:min(510px,59vh); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; }
.ireevo-search__results-layout { display:grid; grid-template-columns:minmax(0,var(--ireevo-search-left-width)) minmax(0,1fr); gap:26px; }
.ireevo-search__suggestions { padding-right:24px; border-right:1px solid var(--ireevo-search-border); min-width:0; }
.ireevo-search__frequent { border-top:1px solid var(--ireevo-search-border); margin-top:18px; padding-top:18px; }
.ireevo-search__suggestion-list { list-style:none; padding:0 !important; margin:0 !important; }
.ireevo-search__suggestion-list li { margin:0; padding:0; }
.ireevo-search button.ireevo-search__suggestion, .ireevo-search a.ireevo-search__suggestion { display:flex; align-items:center; gap:12px; width:100%; padding:12px 5px; color:#314a70; background:transparent; border:0; text-align:left; text-decoration:none; font:inherit; font-size:14px; line-height:1.35; cursor:pointer; box-shadow:none; }
.ireevo-search button.ireevo-search__suggestion:hover, .ireevo-search a.ireevo-search__suggestion:hover { color:#112dc9; background:#f8faff; }
.ireevo-search__suggestion svg { flex:0 0 auto; }
.ireevo-search__suggestion span:nth-child(2) { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.ireevo-search__suggestion-chevron { margin-left:auto; font-size:22px; }
.ireevo-search__products { min-width:0; }
.ireevo-search__products-heading { display:flex; align-items:baseline; justify-content:space-between; border-bottom:1px solid var(--ireevo-search-border); gap:12px; }
.ireevo-search__count { font-size:12px; color:var(--ireevo-search-muted); }
.ireevo-search__product { display:grid; grid-template-columns:var(--ireevo-search-image-size) minmax(0,1fr) auto auto; align-items:center; gap:14px; padding:12px 1px; border-bottom:1px solid var(--ireevo-search-border); }
.ireevo-search__thumb { display:flex; justify-content:center; align-items:center; width:var(--ireevo-search-image-size); height:var(--ireevo-search-image-size); border-radius:9px; background:#f4f7fc; overflow:hidden; }
.ireevo-search__thumb img { width:100%; height:100%; object-fit:contain; }
.ireevo-search__product-info { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:3px; }
.ireevo-search__product-title { font-size:14px; line-height:1.35; font-weight:650; color:var(--ireevo-search-navy); text-decoration:none; }
.ireevo-search__product-title:hover { color:#1136ce; }
.ireevo-search__product-attribute { font-size:12px; color:var(--ireevo-search-muted); line-height:1.3; }
.ireevo-search__stock { font-size:11px; color:#16754c; background:#e5f7ed; border-radius:30px; padding:2px 10px; }
.ireevo-search__stock.is-out-of-stock { color:#a32b32; background:#fff0f0; }
.ireevo-search__price { white-space:nowrap; color:#1225bf; font-size:14px; font-weight:700; text-align:right; }
.ireevo-search__price del { display:block; color:#9ca8b8; font-size:11px; font-weight:400; }
.ireevo-search__price ins { color:inherit; text-decoration:none; }
.ireevo-search a.ireevo-search__cart { display:flex; align-items:center; justify-content:center; padding:0; height:42px; width:42px; min-width:42px; border:0; border-radius:11px; background:var(--ireevo-search-red); color:white; box-shadow:none; text-decoration:none; }
.ireevo-search a.ireevo-search__cart:hover { color:white; background:#db0000; }
.ireevo-search a.ireevo-search__cart svg { display:block; flex:0 0 auto; width:20px; height:20px; }
.ireevo-search a.ireevo-search__cart i { display:block; flex:0 0 auto; font-size:20px; line-height:1; }
.ireevo-search a.ireevo-search__cart.loading { opacity:.65; pointer-events:none; }
.ireevo-search a.ireevo-search__cart.added { background:#16834d; }
.ireevo-search a.ireevo-search__cart::before, .ireevo-search a.ireevo-search__cart::after { content:none !important; }
.ireevo-search a.added_to_cart { display:none !important; }
.ireevo-search__footer { display:flex; gap:18px; align-items:center; justify-content:center; padding-top:18px; }
.ireevo-search__all-results { flex:1 1 auto; text-align:center; padding:12px 22px; background:#ff1010; color:white; font-size:14px; font-weight:700; border-radius:10px; text-decoration:none; }
.ireevo-search__all-results:hover { background:#db0000; color:white; }
.ireevo-search__advanced { flex:0 0 auto; color:#132bbd; font-size:13px; font-weight:650; text-decoration:none; }
.ireevo-search__help { color:var(--ireevo-search-muted); font-size:12px; line-height:1.45; border-top:1px solid #eef1f6; padding-top:13px; margin-top:21px; }
.ireevo-search__help p { margin:0; }
.ireevo-search__help a { color:#113acc; }
.ireevo-search__loading, .ireevo-search__empty { color:var(--ireevo-search-muted); padding:18px 5px; font-size:14px; }
.ireevo-search__no-suggestions { font-size:13px; color:var(--ireevo-search-muted); }
.ireevo-search :focus-visible { outline:2px solid #1849e8; outline-offset:3px; }
@media (max-width: 767px) {
 .ireevo-search { padding:20px 16px; border-radius:10px; --ireevo-search-image-size:55px; }
 .ireevo-search__title { font-size:23px; margin-bottom:16px; }
 .ireevo-search__form { padding:4px 4px 4px 13px; gap:8px; min-height:50px; }
 .ireevo-search .ireevo-search__submit { min-width:74px; min-height:40px; padding:9px 12px; font-size:12px; }
 .ireevo-search__live { max-height:62dvh; }
 .ireevo-search__results-layout { display:flex; flex-direction:column; gap:22px; }
 .ireevo-search__suggestions { padding-right:0; padding-bottom:15px; border-right:0; border-bottom:1px solid var(--ireevo-search-border); }
 .ireevo-search__frequent { border-top:1px solid var(--ireevo-search-border); margin-top:18px; padding-top:18px; }
.ireevo-search__suggestion-list { display:grid; grid-template-columns:1fr 1fr; gap:0 10px; }
 .ireevo-search button.ireevo-search__suggestion, .ireevo-search a.ireevo-search__suggestion { padding:9px 2px; font-size:12px; }
 .ireevo-search__product { grid-template-columns:var(--ireevo-search-image-size) minmax(0,1fr) auto; gap:9px; }
 .ireevo-search__price { grid-column:2; grid-row:2; justify-self:start; font-size:12px; }
 .ireevo-search__product-info { grid-column:2; grid-row:1; }
 .ireevo-search__thumb { grid-column:1; grid-row:1 / span 2; }
 .ireevo-search a.ireevo-search__cart { grid-column:3; grid-row:1 / span 2; width:38px; min-width:38px; height:38px; }
 .ireevo-search__footer { flex-direction:column; gap:12px; }
 .ireevo-search__all-results { width:100%; }
}
