:root{
  --outline-size: 48px;
  --dot-size: 8px;
  --outline-border: 1.6px;
  --outline-color: rgba(10,10,10,0.95);
  --dot-color: rgba(10,10,10,1);
}
.wpbcc-cursor-outline {
  position: fixed;
  left: 0;
  top: 0;
  width: var(--outline-size);
  height: var(--outline-size);
  border-radius: 50%;
  border: var(--outline-border) solid var(--outline-color);
  pointer-events: none;
  transform: translate(-50%, -50%) translate3d(0,0,0);
  z-index: 999999;
  will-change: transform, opacity;
  transition: box-shadow 160ms, border-color 160ms, transform 160ms;
}
.wpbcc-cursor-dot {
  position: fixed;
  left: 0;
  top: 0;
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: 50%;
  background: var(--dot-color);
  pointer-events: none;
  transform: translate(-50%, -50%) translate3d(0,0,0);
  z-index: 1000000;
  will-change: transform;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.03) inset;
  opacity: 0.98;
}
.wpbcc-cursor-outline.wpbcc-enlarge {
  transform: translate(-50%, -50%) scale(1.35);
  border-color: #111;
  box-shadow: 0 8px 20px rgba(8,20,40,0.06);
}
@media (max-width:720px) {
  .wpbcc-cursor-outline, .wpbcc-cursor-dot { display: none !important; }
}