/* OpenClaw global motion policy — high-refresh, transform-only, drag-friendly UI */
:root {
  --openclaw-motion-frame-budget-ms: 8.33;
  --openclaw-motion-ease-out: cubic-bezier(.2,.8,.2,1);
}

.openclaw-motion-layer,
.openclaw-draggable,
#openclaw-progress-capsule-root,
.oc-progress-hud {
  will-change: transform;
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  contain: layout style paint;
}

html.openclaw-motion-dragging,
body.openclaw-motion-dragging {
  cursor: grabbing !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}

html.openclaw-motion-dragging * {
  scroll-behavior: auto !important;
}

html.openclaw-motion-dragging :is(.oc-progress-hud, .openclaw-motion-drag-lite) {
  transition: none !important;
  animation-play-state: paused !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}
