.zv-target { cursor: zoom-in; }

.md-typeset .zv-note {
  margin: 0.2rem 0 0.8rem;
  font-size: 0.7rem;
  color: var(--md-default-fg-color--light);
}

.zv-lock { overflow: hidden; }

.zv {
  position: fixed;
  inset: 0;
  z-index: 1000;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.9);
  touch-action: none;
  cursor: grab;
}
.zv.zv-dragging { cursor: grabbing; }

.zv-img {
  position: absolute;
  left: 0;
  top: 0;
  max-width: none;
  background: #fff;
  user-select: none;
  -webkit-user-drag: none;
}

.zv-bar {
  position: fixed;
  top: 12px;
  right: 12px;
  z-index: 1001;
  display: flex;
  gap: 6px;
}
.zv-bar button {
  font: inherit;
  font-size: 0.8rem;
  min-width: 2.2rem;
  padding: 0.35rem 0.7rem;
  border: 0;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.92);
  color: #111;
  cursor: pointer;
}
.zv-bar button:hover,
.zv-bar button:focus-visible { background: #fff; outline: 2px solid #4a90d9; }

.zv-hint {
  position: fixed;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.3rem 0.8rem;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.55);
  color: #ddd;
  font-size: 0.75rem;
  white-space: nowrap;
  pointer-events: none;
}
