/* search-suggest.css  instant search panel (prefix .xs-), xUmp design tokens
   Phones/tablets: compact list.  Desktop (992px+): .is-wide grid panel. */
.xs-host{position:relative;}
.xs-busy input[type=text]{background-image:linear-gradient(90deg,transparent,rgba(46,46,99,.08),transparent);background-size:200% 100%;animation:xs-shimmer 1s linear infinite;}
@keyframes xs-shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.xs-busy input[type=text]{animation:none;}}

.xs-panel{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:1050;background:#fff;border:1px solid #e6e8ee;border-radius:10px;
  box-shadow:0 14px 36px rgba(20,24,40,.16);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#33414a;text-align:left;}
.xs-panel[hidden]{display:none;}
.xs-main{overflow-y:auto;overscroll-behavior:contain;}
.xs-side{display:none;}

/* ---------- list (phones / tablets) ---------- */
.xs-list{list-style:none;margin:0;padding:6px 0;}
.xs-item{margin:0;padding:0;}
.xs-link{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:7px 14px;min-height:62px;text-decoration:none;color:inherit;}
.xs-link:hover,.xs-link:focus{text-decoration:none;color:inherit;}
.xs-item.is-active .xs-link{background:#f0f4f1;}
.xs-item.is-active .xs-name{color:#2e2e63;}
.xs-thumb{width:52px;height:52px;border-radius:8px;background:#fff;border:1px solid #f0f1f4;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.xs-thumb img{width:100%;height:100%;object-fit:contain;display:block;}
.xs-body{min-width:0;display:flex;flex-direction:column;gap:4px;}
.xs-name{font-size:14px;line-height:1.3;color:#1a2e1c;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.xs-name mark,.xs-cname mark{background:none;color:inherit;font-weight:700;padding:0;}
.xs-meta,.xs-cmeta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;line-height:1.2;}
.xs-pid{color:#8a93a3;font-size:12px;margin-right:2px;}
.xs-stars{color:#f0b429;letter-spacing:1px;font-size:12px;}
.xs-rcount{color:#8a93a3;}
.xs-oos{color:#a14a1f;background:#fdf1ea;border-radius:4px;padding:3px 6px;font-weight:600;font-size:11px;}
.xs-price{font-weight:800;font-size:15px;color:#1a2e1c;white-space:nowrap;}

.xs-empty{padding:16px 18px;font-size:14px;line-height:1.5;color:#5a6270;grid-column:1/-1;}
.xs-empty strong{color:#1a2e1c;}
.xs-empty em{font-style:normal;font-weight:600;color:#2e2e63;}

/* ---------- footer ---------- */
.xs-foot:empty{display:none;}
.xs-foot{border-top:1px solid #eef0f5;}
/* .xh-search/.xs-host prefix beats the header's ".xh-search button" (navy pill) style */
.xs-host .xs-all,.xs-all{display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:#fafbfc;border:0;border-radius:0;padding:12px 16px;font-size:14px;font-weight:400;line-height:1.4;color:#2e2e63;cursor:pointer;font-family:inherit;}
.xs-host .xs-all:hover,.xs-all:hover{background:#f0f4f1;color:#2e2e63;}
.xs-host .xs-all:focus-visible{outline:3px solid #f0b429;outline-offset:-3px;}
.xs-all strong{font-weight:700;}
.xs-all-arrow{margin-left:auto;font-size:16px;color:#1a6b2f;}

/* ---------- desktop wide panel ---------- */
.xs-panel.is-wide .xs-main{display:grid;grid-template-columns:1fr;align-items:start;}
.xs-panel.is-wide.has-side .xs-main{grid-template-columns:210px 1fr;}
.xs-panel.is-wide.has-side .xs-side{display:block;padding:16px 10px 16px 16px;border-right:1px solid #eef0f5;position:sticky;top:0;align-self:stretch;}
.xs-side-h{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a93a3;margin:2px 6px 8px;}
.xs-cats{list-style:none;margin:0;padding:0;}
.xs-cat{display:flex;align-items:baseline;gap:8px;padding:7px 8px;border-radius:7px;text-decoration:none;color:#2e2e63;font-size:14px;line-height:1.3;}
.xs-cat:hover,.xs-cat:focus{background:#f0f4f1;color:#2e2e63;text-decoration:none;}
.xs-cat:focus-visible{outline:3px solid #f0b429;outline-offset:-1px;}
.xs-cat-name{flex:1;min-width:0;}
.xs-cat-n{font-size:12px;color:#8a93a3;}

.xs-panel.is-wide .xs-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:16px;}
.xs-card{margin:0;padding:0;min-width:0;}
.xs-clink{display:flex;flex-direction:column;gap:6px;height:100%;padding:10px;border:1px solid #eef0f5;border-radius:10px;text-decoration:none;color:inherit;background:#fff;transition:border-color .12s ease,box-shadow .12s ease;}
.xs-clink:hover,.xs-clink:focus{text-decoration:none;color:inherit;}
.xs-card.is-active .xs-clink{border-color:#cfd6e4;box-shadow:0 6px 18px rgba(0,0,0,.08);}
.xs-card.is-active .xs-cname{color:#2e2e63;}
/* image box height follows the screen height so both rows fit on a laptop */
.xs-cimg{position:relative;display:block;height:clamp(120px,22vh,210px);border-radius:8px;overflow:hidden;background:#fff;}
.xs-cimg img{width:100%;height:100%;object-fit:contain;display:block;}
.xs-oos--card{position:absolute;left:6px;top:6px;}
.xs-cname{font-size:13.5px;line-height:1.35;color:#1a2e1c;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em;}
.xs-cprice{margin-top:auto;font-weight:800;font-size:16px;color:#1a2e1c;}

@media (prefers-reduced-motion:reduce){.xs-clink{transition:none;}}

/* ---------- phones ---------- */
@media (max-width:767px){
  .xs-panel{border-radius:8px;}
  .xs-link{grid-template-columns:48px 1fr auto;gap:10px;padding:7px 12px;}
  .xs-thumb{width:48px;height:48px;}
  .xs-price{font-size:14px;}
}
