reimplement in a more performant way

- this element is now a container that drops a shadow instead
  of targetting some other element
- the "z" property is not settable, use setZ() instead
- use one-time binding