/* One small sprite follows a real mouse. Touch keeps its native behaviour. */
.goblin-cursor{
 position:fixed;inset:0 auto auto 0;margin:0;padding:0;border:0;
 width:64px;height:64px;overflow:visible;background:transparent;color:transparent;
 pointer-events:none!important;user-select:none;z-index:2147483647;
 contain:layout style;will-change:transform;
}
.goblin-cursor::backdrop{background:transparent;pointer-events:none}
.goblin-cursor-sprite{
 display:block;width:64px;height:64px;pointer-events:none;
 background:url('assets/goblin-cursor-chunky-left.png') 0 0 / 128px 64px no-repeat;
 image-rendering:pixelated;
 /* Left tilt is drawn into the square pixel grid. Pin each pose's fingertip. */
 --tip-x:25px;--tip-y:12px;
 transform:translate(calc(-1 * var(--tip-x)),calc(-1 * var(--tip-y)));
 transform-origin:var(--tip-x) var(--tip-y);
 filter:drop-shadow(1px 2px 0 #03080370);
}
.goblin-cursor.is-link .goblin-cursor-sprite{filter:brightness(1.12) drop-shadow(1px 2px 0 #03080370)}
.goblin-cursor.is-pressed .goblin-cursor-sprite{background-position:-64px 0;--tip-x:17px;--tip-y:6px}
@media(any-pointer:fine){
 html.goblin-cursor-active,html.goblin-cursor-active *{cursor:none!important}
}
@media(forced-colors:active),(any-pointer:none){.goblin-cursor{display:none!important}}
@media print{.goblin-cursor{display:none!important}}
