/* Slider human verification — styles */
html.hv-lock { overflow: hidden; }
[data-hv] { --hv-w: 300px; }
[data-hv="gate"] {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  background: rgba(12, 16, 24, .82);
  backdrop-filter: blur(3px);
  align-items: center;
  justify-content: center;
  padding: 20px;
}
[data-hv="gate"].hv-show { display: flex; }
[data-hv="form"] { margin: 14px 0; }
[data-hv].hv-pass .hv-track { border-color: #2e9e5b; }
[data-hv].hv-pass .hv-fill { background: #2e9e5b; }
[data-hv].hv-pass .hv-knob { background: #2e9e5b; }

.hv-track {
  position: relative;
  width: var(--hv-w);
  max-width: 86vw;
  height: 52px;
  border: 1px solid #c9ced6;
  border-radius: 26px;
  background: #f4f6f9;
  overflow: hidden;
  touch-action: none;
  user-select: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
}
.hv-label {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 500 13px/1 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: #6b7280;
  pointer-events: none;
  padding-left: 34px;
}
.hv-fill {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 52px;
  background: #d7e3f4;
  border-radius: 26px;
  transition: width .12s ease;
}
.hv-knob {
  position: absolute;
  left: 3px; top: 3px;
  width: 46px; height: 46px;
  border-radius: 50%;
  background: #1f6feb;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  cursor: grab;
  touch-action: none;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
  transition: transform .12s ease;
}
.hv-knob:active { cursor: grabbing; }
.hv-knob:focus-visible { outline: 3px solid #93c5fd; outline-offset: 2px; }
.hv-shake { animation: hv-shake .4s ease; }
@keyframes hv-shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-7px); }
  75% { transform: translateX(7px); }
}
@media (prefers-color-scheme: dark) {
  .hv-track { background: #1b2029; border-color: #39414f; }
  .hv-label { color: #9aa4b2; }
  .hv-fill { background: #2a3446; }
}
