.shyvs-file {
  position: fixed !important;
  left: -99999px !important;
  top: -99999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* v1.5 has no positioned camera DOM element. The camera is painted as a
   background layer of the real search input, so it cannot drift or be clipped. */

.shyvs-panel {
  box-sizing: border-box;
  position: fixed !important;
  z-index: 2147482999 !important;
  background: #fff;
  border: 1px solid rgba(20,20,20,.10);
  border-radius: 14px;
  box-shadow: 0 14px 38px rgba(25,20,50,.16);
  overflow: hidden;
  min-width: 280px;
  color: #171717;
}
.shyvs-panel[hidden] { display: none !important; }
.shyvs-panel-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 14px 8px; font-size:13px; }
.shyvs-close { border:0; background:transparent; width:30px; height:30px; font-size:22px; line-height:1; cursor:pointer; border-radius:50%; }
.shyvs-close:hover { background:#f3f1fa; }
.shyvs-status-row { min-height:58px; padding:14px; display:flex; align-items:center; gap:10px; font-size:13px; }
.shyvs-spinner { width:18px; height:18px; border-radius:50%; border:2px solid #ddd7fb; border-top-color:#5422E8; animation:shyvs-spin .7s linear infinite; flex:none; }
@keyframes shyvs-spin { to { transform:rotate(360deg); } }
.shyvs-results { max-height:min(460px,65vh); overflow:auto; padding:4px 8px 10px; }
.shyvs-result { display:flex; align-items:center; gap:11px; padding:9px; border-radius:11px; text-decoration:none !important; color:inherit !important; }
.shyvs-result:hover { background:#f8f7fc; }
.shyvs-result img { width:56px; height:56px; object-fit:cover; border-radius:9px; flex:none; background:#f5f5f5; }
.shyvs-result-copy { min-width:0; display:flex; flex-direction:column; gap:3px; }
.shyvs-result-name { font-size:13px; line-height:1.3; font-weight:600; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.shyvs-result-price { font-size:12px; opacity:.86; }

@media (max-width:640px) {
  .shyvs-results { max-height:min(50vh,420px); }
}
