/* Search-time warning on filters that narrow the results (js/index/filter-search-alert.js). */
@property --filter-alert-angle { syntax: '<angle>'; inherits: false; initial-value: 0deg; }
.filter-search-ring {
  position: fixed;
  z-index: 10000;
  box-sizing: border-box;
  padding: 2px;
  pointer-events: none;
  background: conic-gradient(from var(--filter-alert-angle), #ff3b30, #ff9500, #ffcc00, #34c759, #00c7be, #007aff, #af52de, #ff3b30);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: filter-alert-spin 1.2s linear infinite;
}
@keyframes filter-alert-spin { to { --filter-alert-angle: 360deg; } }
.filter-search-tip {
  position: fixed;
  z-index: 10001;
  padding: 6px 10px;
  border-radius: 8px;
  background: #1f2937;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  white-space: nowrap;
  box-shadow: 0 6px 18px #0005;
  pointer-events: none;
}
.filter-search-tip[hidden] { display: none; }
.filter-search-tip::before {
  content: '';
  position: absolute;
  top: -5px;
  left: calc(var(--tip-arrow, 16px) - 5px);
  border: 5px solid transparent;
  border-top: 0;
  border-bottom-color: #1f2937;
}
@media (prefers-reduced-motion: reduce) {
  .filter-search-ring { animation: none; }
}
