/* DL Search dropdown */
html.dls-on .dl-hsearch .dl-sug { display: none !important; }
.dl-hsearch, form.woocommerce-product-search { position: relative; }
.dls-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.dls-panel[hidden] { display: none !important; }
.dls-panel {
  position: absolute; top: calc(100% + 8px); left: 0; z-index: 99999;
  width: max(100%, 580px); max-width: calc(100vw - 24px); max-height: min(78vh, 640px); overflow-y: auto; overscroll-behavior: contain;
  background: #fff; border: 1px solid #e4e8ee; border-radius: 12px; box-shadow: 0 18px 44px rgba(20,33,47,.18);
  padding: 6px 0 0; font-weight: 400; font-size: 14px; line-height: 1.35; color: #14212f; text-align: left;
}
.dls-panel.dls-fixed { position: fixed; left: 8px; right: 8px; width: auto; max-width: none; top: auto; }
.dls-panel, .dls-panel * { font-family: inherit; box-sizing: border-box; }
.dls-panel a { text-decoration: none !important; color: #14212f !important; }
.dls-h { display: flex; justify-content: space-between; align-items: center; padding: 10px 14px 4px; font-weight: 700; font-size: 11px; line-height: 1; letter-spacing: .07em; text-transform: uppercase; color: #5b6b7d; }
.dls-h .dls-clear { font-weight: 600; text-transform: none; letter-spacing: 0; color: #5b6b7d !important; text-decoration: underline !important; }
.dls-dym { display: block; margin: 4px 8px 2px; padding: 10px 12px; border-radius: 8px; background: #f2fbf1; border: 1px solid #cdeec9; font-size: 14px; }
.dls-dym b { color: #1e7f17; }
.dls-item, .dls-q, .dls-cat, .dls-foot { display: flex; align-items: center; gap: 12px; }
.dls-item { padding: 8px 14px; min-height: 64px; }
.dls-item:hover, .dls-q:hover, .dls-cat:hover, .dls-chip:hover, .dls-dym:hover, .is-active { background: #f1f4f8; }
.dls-dym.is-active { background: #e4f6e1; }
.dls-shot { flex: 0 0 52px; width: 52px; height: 52px; border: 1px solid #e4e8ee; border-radius: 8px; background: #fff; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.dls-shot img { width: 100%; height: 100%; object-fit: contain; padding: 3px; }
.dls-body { flex: 1 1 auto; min-width: 0; display: block; }
.dls-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-weight: 500; font-size: 13.5px; line-height: 1.35; }
.dls-panel mark { background: none !important; color: #000 !important; font: inherit !important; font-weight: 800 !important; letter-spacing: inherit !important; padding: 0 !important; text-transform: none !important; }
.dls-meta { display: flex; gap: 6px; margin-top: 3px; align-items: center; }
.dls-panel .dls-cond { display: inline-block; font-weight: 700; font-size: 10.5px; line-height: 1; padding: 3px 7px; border-radius: 99px; background: #e8f6e6; color: #1e7f17; letter-spacing: .02em; }
.dls-cond--new { background: #e6effa; color: #1c4f94; }
.dls-oos { font-weight: 600; font-size: 11px; line-height: 1; color: #b3261e; }
.dls-item.is-oos .dls-shot img { opacity: .55; }
.dls-price { flex: 0 0 auto; font-weight: 700; font-size: 13.5px; line-height: 1.2; font-variant-numeric: tabular-nums; white-space: nowrap; text-align: right; }
.dls-chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 6px 14px 8px; }
.dls-chip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border: 1px solid #e4e8ee; border-radius: 99px; font-size: 13px; font-weight: 600; background: #fff; }
.dls-chip small, .dls-cat small { color: #5b6b7d; font-weight: 600; font-size: 11px; }
.dls-q { padding: 9px 14px; font-size: 14px; }
.dls-q svg { width: 16px; height: 16px; fill: none; stroke: #5b6b7d; stroke-width: 2; stroke-linecap: round; flex: 0 0 auto; }
.dls-cat { padding: 10px 14px; justify-content: space-between; font-weight: 600; }
.dls-foot { justify-content: center; padding: 13px 14px; border-top: 1px solid #e4e8ee; background: #f7f9fb; font-weight: 700; font-size: 13.5px; line-height: 1; color: #14212f !important; position: sticky; bottom: 0; }
.dls-foot:hover, .dls-foot.is-active { background: #eaf7e8; }
.dls-empty { padding: 22px 16px 10px; text-align: center; }
.dls-empty b, .dls-empty span { display: block; }
.dls-empty span { color: #5b6b7d; margin-top: 4px; font-size: 13px; }
@media (max-width: 900px) {
  .dls-item { min-height: 62px; padding: 8px 12px; }
  .dls-chip, .dls-q, .dls-cat { min-height: 40px; }
  .dls-name { font-size: 13px; }
}
.dls-corrected { margin: 0 0 16px; padding: 12px 16px; border-radius: 10px; background: #f2fbf1; border: 1px solid #cdeec9; font-size: 15px; }
.dls-corrected a { font-weight: 600; text-decoration: underline; }
.dls-panel .dls-chip { border-radius: 99px !important; }
.dls-panel.dls-fixed .dls-foot { padding-right: 78px; }
/* zero-result: source it for you */
.dls-src { padding: 14px 16px 16px; text-align: center; }
.dls-src-t { font-weight: 600; font-size: 14px; line-height: 1.4; margin: 0 0 12px; }
.dls-panel a.dls-wa { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; border-radius: 12px; background: #25d366; color: #fff !important; font-weight: 700; font-size: 15px; }
.dls-panel a.dls-wa:hover, .dls-panel a.dls-wa.is-active { background: #1fbd5a; }
.dls-src-l { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; margin-top: 10px; }
.dls-src-l a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid #cfd6df; border-radius: 99px; font-weight: 600; font-size: 13.5px; }
.dls-panel a.dls-src-line { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 14px; border-top: 1px solid #e4e8ee; font-size: 13px; font-weight: 600; color: #1e7f17 !important; }
.dls-panel.dls-fixed a.dls-src-line { padding-right: 14px; }
