body,body *{cursor:none!important}.site-cursor{position:fixed;left:0;top:0;width:0;height:0;pointer-events:none;z-index:10000;opacity:0;transition:opacity .12s ease}.site-cursor-effects{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.site-cursor-trail{position:absolute;left:0;top:0;width:var(--trail-length, 20px);height:var(--trail-thickness, 6px);border-radius:999px;transform:translate(-100px,-100px) rotate(0);transform-origin:center left;opacity:0;transition:opacity .15s ease;will-change:transform,opacity}.site-cursor-heart{position:absolute;left:0;top:0;font-size:18px;line-height:1;color:#ff85d8;transform:translate(-50%,-50%);text-shadow:0 1px 8px rgba(130,203,255,.55);opacity:0;animation:cursor-heart-burst .76s cubic-bezier(.16,.84,.28,1) forwards;will-change:transform,opacity}@keyframes cursor-heart-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(0)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% + var(--dy, -48px))) scale(var(--scale, 1)) rotate(var(--rotate, 0deg))}}.site-cursor.visible{opacity:1}.site-cursor-tip{position:absolute;left:0;top:0;width:20px;height:20px;transform:scale(1);transform-origin:center}.site-cursor-tip:before{content:"💗";position:absolute;left:0;top:0;font-size:18px;line-height:1;filter:drop-shadow(1px 1px 0 #9f2e84) drop-shadow(2px 2px 0 rgba(68,27,83,.45))}.site-cursor-hand,.site-cursor-beam{position:absolute;left:0;top:0;opacity:0;transition:opacity .08s ease}.site-cursor-hand{width:2px;height:2px;background:#ff82d9;transform:translate(2px,-2px) rotate(-10deg);box-shadow:0 2px #ff82d9,0 4px #ff82d9,0 6px #ff82d9,0 8px #ff82d9,0 10px #ff82d9,0 12px #ff82d9,2px 0 #ff82d9,2px 2px #ff82d9,2px 4px #ff82d9,2px 6px #ff82d9,2px 8px #ff82d9,2px 10px #ff82d9,2px 12px #ff82d9,4px 2px #ff82d9,4px 4px #ff82d9,4px 6px #ff82d9,4px 8px #ff82d9,4px 10px #ff82d9,4px 12px #ff82d9,6px 4px #ff82d9,6px 6px #ff82d9,6px 8px #ff82d9,6px 10px #ff82d9,8px 6px #ff82d9,8px 8px #ff82d9,8px 10px #ff82d9,10px 8px #ff82d9,10px 10px #ff82d9,12px 10px #ff82d9,-2px 2px #ffd7f4,-2px 4px #ffd7f4,-2px 6px #ffd7f4,-2px 8px #ffd7f4,-2px 10px #ffd7f4,0 -2px #ffd7f4,2px -2px #ffd7f4,4px 0 #ffd7f4,6px 2px #ffd7f4,8px 4px #ffd7f4,10px 6px #ffd7f4,12px 8px #ffd7f4,14px 10px #ffd7f4,0 14px #9f2e84,2px 14px #9f2e84,4px 14px #9f2e84,6px 12px #9f2e84,8px 12px #9f2e84,10px 12px #9f2e84,12px 12px #9f2e84}.site-cursor-beam{left:2px;top:-2px;width:4px;height:24px;border:2px solid #ffd7f4;background:#ff82d9;box-shadow:2px 2px #9f2e84;image-rendering:pixelated}.site-cursor-beam:before,.site-cursor-beam:after{content:"";position:absolute;left:-6px;width:12px;height:3px;background:#ffd7f4;box-shadow:1px 1px #9f2e84}.site-cursor-beam:before{top:-3px}.site-cursor-beam:after{bottom:-3px}.site-cursor-tool{position:absolute;left:0;top:0;width:2px;height:2px;opacity:0;image-rendering:pixelated;transition:opacity .08s ease}.site-cursor-tool-brush{background:#fff6ff;box-shadow:2px 0 #fff6ff,4px 2px #ffdff4,6px 4px #ffdff4,8px 6px #ffc5e9,10px 8px #ffc5e9,12px 10px #ff9fbb,14px 12px #ff9fbb,16px 14px #8a5abf,18px 16px #8a5abf,20px 18px #6d429f,22px 20px #6d429f,24px 22px #4f2f7e}.site-cursor-tool-eraser{background:#fff6ff;box-shadow:2px 0 #fff6ff,4px 2px #f7e8ff,6px 4px #f7e8ff,8px 6px #ffd8ef,10px 8px #ffd8ef,12px 10px #ffb6da,14px 12px #ffb6da,16px 14px #ff9fbb,18px 16px #ff9fbb,20px 18px #2a1d40,22px 20px #2a1d40,12px 12px #fff,14px 14px #fff,16px 16px #fff}.site-cursor-tool-bucket{background:#fff6ff;box-shadow:2px 0 #fff6ff,4px 2px #ffdff4,6px 4px #ffdff4,8px 6px #ffc6eb,10px 8px #ffc6eb,12px 10px #c7b1f8,14px 10px #c7b1f8,16px 10px #8a5abf,12px 12px #c7b1f8,14px 12px #c7b1f8,16px 12px #8a5abf,12px 14px #8a5abf,14px 14px #8a5abf,16px 14px #6d429f,10px 16px #bfefff,12px 16px #bfefff,14px 16px #bfefff,16px 16px #89f7d0}.site-cursor-fly{position:absolute;left:22px;top:18px;width:40px;height:40px;object-fit:contain;image-rendering:pixelated;transform:scaleX(-1);transform-origin:center;filter:drop-shadow(1px 1px 0 rgba(81,28,98,.6))}.site-cursor.mode-pointer .site-cursor-tip,.site-cursor.mode-text .site-cursor-tip,.site-cursor.mode-brush .site-cursor-tip,.site-cursor.mode-eraser .site-cursor-tip,.site-cursor.mode-bucket .site-cursor-tip{opacity:0}.site-cursor.mode-brush .site-cursor-tool-brush,.site-cursor.mode-eraser .site-cursor-tool-eraser,.site-cursor.mode-bucket .site-cursor-tool-bucket,.site-cursor.mode-pointer .site-cursor-hand,.site-cursor.mode-text .site-cursor-beam{opacity:1}.site-cursor.mode-grab .site-cursor-tip{transform:scale(1.08)}.site-cursor.mode-grabbing .site-cursor-tip{transform:scale(.92);filter:brightness(.95)}.site-cursor.mode-grab .site-cursor-fly{transform:scaleX(-1) scale(1.08)}.site-cursor.mode-grabbing .site-cursor-fly,.site-cursor.pressed .site-cursor-fly{transform:scaleX(-1) scale(.92)}.site-cursor.pressed .site-cursor-tip,.site-cursor.pressed.mode-pointer .site-cursor-hand,.site-cursor.pressed.mode-text .site-cursor-beam,.site-cursor.pressed.mode-brush .site-cursor-tool-brush,.site-cursor.pressed.mode-eraser .site-cursor-tool-eraser,.site-cursor.pressed.mode-bucket .site-cursor-tool-bucket{filter:brightness(.92)}@media (prefers-reduced-motion: reduce){.site-cursor-trail,.site-cursor-heart{transition:none;animation:none}}
