/* Glitter pointer (see assets/js/glitter.js) */
.glitter-layer {
  position: fixed; inset: 0; width: 100%; height: 100%;
  pointer-events: none; z-index: 2147483000;
}
.glitter-pointer {
  position: fixed; left: 0; top: 0; width: 34px; height: 34px;
  pointer-events: none; z-index: 2147483001;
  filter: drop-shadow(0 0 4px rgba(255, 214, 120, .85)) drop-shadow(0 0 10px rgba(190, 140, 255, .45));
  will-change: transform;
}
.glitter-pointer svg { display: block; overflow: visible; transition: transform .15s ease; transform-origin: 3px 2px; }
.glitter-pointer.is-hover svg { transform: scale(1.14) rotate(-6deg); }
.glitter-pointer.is-down svg { transform: scale(.88); }
.glitter-pointer.is-hidden { opacity: 0; }
.glitter-pointer .gl-tip { transform-origin: 3px 2px; animation: gl-tip 1.6s ease-in-out infinite; }
@keyframes gl-tip {
  0%, 100% { transform: scale(.55) rotate(0deg); opacity: .65; }
  50% { transform: scale(1.15) rotate(45deg); opacity: 1; }
}
html.glitter-cursor, html.glitter-cursor * { cursor: none !important; }
html.glitter-cursor input:not([type=button]):not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),
html.glitter-cursor textarea,
html.glitter-cursor [contenteditable=""], html.glitter-cursor [contenteditable="true"] { cursor: text !important; }
html.glitter-cursor select { cursor: default !important; }
