/**
 * BloomScroll - Clean, minimal scrolling
 */

/* Body states for scrolling */
body.bloom-scrolling {
  cursor: ns-resize;
}

body.bloom-scrolling .control-panel {
  opacity: 0.5;
  transition: opacity 0.3s ease;
}

body.bloom-scrolling .control-panel:hover {
  opacity: 1;
}

/* Disable default scroll */
body.bloom-scroll-active {
  overflow: hidden;
  overscroll-behavior: none;
  -webkit-overflow-scrolling: none;
  position: fixed;
  width: 100%;
  height: 100%;
}

/* Mobile optimizations */
@media (max-width: 768px) {
  /* Hide panel completely on mobile during scroll */
  body.bloom-scrolling .control-panel {
    opacity: 0;
    pointer-events: none;
  }
}

/* Momentum scrolling feel */
* {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  user-select: none;
}

/* Prevent rubber banding on iOS - DISABLED since scroll is off */
/* html, body {
  position: fixed;
  overflow: hidden;
  width: 100%;
  height: 100%;
} */

/* High performance GPU acceleration */
#p5js-container,
#p5js-container canvas {
  will-change: transform;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}