/* Add free-leaf-layer to the caller's existing scene layer; no background. */
.free-leaf-layer { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.free-leaf {
  position: absolute; left: 0; top: 0; width: 66px; height: 66px;
  min-width: 44px; min-height: 44px; margin: 0; padding: 3px;
  border: 0; border-radius: 16px; background: transparent;
  appearance: none; -webkit-appearance: none; color: inherit;
  pointer-events: auto; cursor: pointer; touch-action: manipulation;
  -webkit-tap-highlight-color: transparent; user-select: none;
  perspective: 240px;
}
.free-leaf-art { display: block; width: 100%; height: 100%; overflow: visible; transform-origin: 50% 50%; filter: drop-shadow(0 3px 3px #072a3040); }
.free-leaf:focus-visible { outline: 2px solid #fff0bf; outline-offset: -2px; background: #ffffff12; }
.free-leaf-blade { display: block; width: 100%; height: 100%; object-fit: contain; pointer-events: none; user-select: none; -webkit-user-select: none; -webkit-user-drag: none; }
.free-leaf-cue .free-leaf-art { filter: drop-shadow(0 2px 3px #ffe3a590) brightness(1.28); }
.free-leaf:disabled { cursor: default; }
@media (prefers-reduced-motion: reduce) {
  .free-leaf-art { transition: none; animation: none; }
}
