.spotlight-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  pointer-events: none;
  --spot-x: 50%;
  --spot-y: 50%;
  --r1: 120px;
  --r2: 200px;
  --alpha: 0.96;
  --c1: rgba(255,255,255,0);
  --c2: rgba(255,255,255,0);
  transition: opacity .3s ease;
  opacity: 0;
  background: radial-gradient(circle at var(--spot-x) var(--spot-y),
    var(--c1) 0, var(--c2) var(--r1), rgba(0,0,0,0.75) var(--r2), rgba(0,0,0,var(--alpha)) 100%);
}

.spotlight-dust {
  position: fixed;
  inset: 0;
  z-index: 100000;
  pointer-events: none;
  opacity: .55;
  mix-blend-mode: normal;
  transition: opacity .3s ease;
}

.spotlight-toggle {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 30px;
  background: #222;
  border-radius: 30px;
  display: flex;
  align-items: center;
  padding: 3px;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  z-index: 100001;
  transition: background 0.3s;
}
.spotlight-toggle.on { background: #FF0000; }
.spotlight-toggle .knob {
  width: 24px;
  height: 24px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 5px rgba(0,0,0,0.4);
  transition: transform 0.3s;
  transform: translateX(0);
}
.spotlight-toggle.on .knob { transform: translateX(30px); }
