/* ============================================================
   cursor.css — Custom Cursor & Noise Overlay
============================================================ */

#cursor {
  position: fixed;
  width: 8px;
  height: 8px;
  background: var(--solar-gold);
  border-radius: 50%;
  pointer-events: none;
  z-index: 10000;
  transform: translate(-50%, -50%);
  transition: width 0.3s var(--ease-spring),
              height 0.3s var(--ease-spring),
              background 0.3s;
  mix-blend-mode: screen;
}
#cursor.hovered { width: 16px; height: 16px; }

#cursor-ring {
  position: fixed;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(244,180,0,0.5);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%);
  transition: width 0.4s var(--ease-spring),
              height 0.4s var(--ease-spring),
              border-color 0.3s;
}
#cursor-ring.hovered {
  width: 60px;
  height: 60px;
  border-color: rgba(244,180,0,0.8);
}

#noise {
  position: fixed;
  inset: 0;
  z-index: 9000;
  pointer-events: none;
  opacity: 0.025;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  background-size: 200px 200px;
}
