/* Running Robot: lightweight articulated pointer, activated only after JS is ready. */
.rr-robot-pointer{--rr-cursor-ready:1;position:fixed;left:0;top:0;width:0;height:0;z-index:2147483000;pointer-events:none!important;visibility:hidden;isolation:isolate;color:#064df2;contain:layout style}
.rr-robot-pointer *{pointer-events:none!important;box-sizing:border-box}
.rr-robot-pointer[data-visible="true"]{visibility:visible}
.rr-cursor-point{position:absolute;left:-3px;top:-3px;width:6px;height:6px;border-radius:50%;background:#064df2;border:1.5px solid white;box-shadow:0 0 0 1px #064df270;transition:box-shadow .15s,background .15s}
.rr-robot-pointer[data-link="true"] .rr-cursor-point{background:#ff754f;box-shadow:0 0 0 4px #064df21c,0 0 0 1px #064df2}
.rr-cursor-character{position:absolute;left:0;top:0;width:44px;height:53px;transform:translate(var(--robot-x,8px),var(--robot-y,-27px));filter:drop-shadow(0 2px 2px #071b4930)}
.rr-cursor-character svg{display:block;width:44px;height:52.25px;overflow:visible}
.rr-cursor-body{transform-origin:32px 53px;animation:rr-cursor-breathe 2.4s ease-in-out infinite}
.rr-cursor-head{transform-origin:32px 30px}
.rr-cursor-left-arm{transform-origin:19px 40px}
.rr-cursor-right-arm{transform-origin:45px 40px}
.rr-cursor-left-leg{transform-origin:25px 55px}
.rr-cursor-right-leg{transform-origin:39px 55px}
.rr-cursor-wave-arm,.rr-cursor-wink,.rr-cursor-punch-arm{display:none}
.rr-cursor-greeting{position:absolute;bottom:calc(100% + 3px);left:10px;white-space:nowrap;padding:4px 8px;border-radius:10px 10px 10px 2px;border:1px solid #064df22b;background:#fff;color:#064df2;font:700 11px/1.2 system-ui,sans-serif;letter-spacing:.02em;box-shadow:0 3px 10px #12294e14;opacity:0;transform:translateY(4px) scale(.85);transform-origin:bottom left;transition:opacity .16s,transform .2s}
.rr-robot-pointer[data-flip="true"] .rr-cursor-greeting{left:auto;right:8px}
.rr-robot-pointer[data-top="true"] .rr-cursor-greeting{bottom:auto;top:calc(100% + 3px);border-radius:2px 10px 10px 10px;transform-origin:top left}
.rr-robot-pointer[data-state="running"] .rr-cursor-body{animation:rr-cursor-run .28s ease-in-out infinite}
.rr-robot-pointer[data-state="running"] .rr-cursor-left-arm{animation:rr-cursor-arm .28s ease-in-out infinite}
.rr-robot-pointer[data-state="running"] .rr-cursor-right-arm{animation:rr-cursor-arm .28s ease-in-out -.14s infinite}
.rr-robot-pointer[data-state="running"] .rr-cursor-left-leg{animation:rr-cursor-stride .28s ease-in-out infinite}
.rr-robot-pointer[data-state="running"] .rr-cursor-right-leg{animation:rr-cursor-stride .28s ease-in-out -.14s infinite}
.rr-robot-pointer[data-state="waving"] .rr-cursor-right-arm,.rr-robot-pointer[data-state="waving"] .rr-cursor-eye-right{display:none}
.rr-robot-pointer[data-state="waving"] .rr-cursor-wave-arm,.rr-robot-pointer[data-state="waving"] .rr-cursor-wink{display:inline}
.rr-robot-pointer[data-state="waving"] .rr-cursor-wave-hand{transform-origin:53px 29px;animation:rr-cursor-wave .35s ease-in-out infinite alternate}
.rr-robot-pointer[data-state="waving"] .rr-cursor-head{animation:rr-cursor-hello 1.2s ease-in-out infinite alternate}
.rr-robot-pointer[data-state="waving"] .rr-cursor-greeting{opacity:1;transform:translateY(0) scale(1)}
.rr-robot-pointer[data-state="punching"] .rr-cursor-left-arm{display:none}
.rr-robot-pointer[data-state="punching"] .rr-cursor-punch-arm{display:inline}
.rr-robot-pointer[data-state="punching"] .rr-cursor-body{animation:none}
.rr-cursor-punch-reach{stroke-dasharray:130;stroke-dashoffset:130;animation:rr-cursor-reach .6s ease-out both}
.rr-cursor-punch-fist{animation:rr-cursor-punch .6s cubic-bezier(.2,.8,.2,1) both}
.rr-cursor-impact{position:fixed;z-index:2147482999;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;border:2px solid #ff754f;border-radius:50%;opacity:0;pointer-events:none!important}
.rr-cursor-impact::before,.rr-cursor-impact::after{content:"";position:absolute;inset:-5px;border:2px solid #064df2;clip-path:polygon(45% 0,55% 0,55% 100%,45% 100%);transform:rotate(45deg)}
.rr-cursor-impact::after{transform:rotate(-45deg)}
.rr-cursor-impact[data-active="true"]{animation:rr-cursor-impact .55s .08s ease-out both}
.rr-cursor-toggle{display:none;align-items:center;gap:6px;padding:5px 9px;border:1px solid #a8c0f744;border-radius:20px;background:transparent;color:inherit;font:inherit;line-height:1.2;white-space:nowrap;cursor:pointer}
.rr-cursor-toggle::before{content:"";width:6px;height:6px;border-radius:50%;background:#80d9b6}
.rr-cursor-toggle[aria-pressed="false"]::before{background:#91a0b8}
.rr-cursor-toggle:focus-visible{outline:2px solid #82a6ff;outline-offset:4px}
@keyframes rr-cursor-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-.7px)}}
@keyframes rr-cursor-run{0%,100%{transform:translateY(0) rotate(var(--robot-lean,5deg))}50%{transform:translateY(-3px) rotate(var(--robot-lean,5deg))}}
@keyframes rr-cursor-arm{0%,100%{transform:rotate(-28deg)}50%{transform:rotate(28deg)}}
@keyframes rr-cursor-stride{0%,100%{transform:rotate(30deg)}50%{transform:rotate(-35deg)}}
@keyframes rr-cursor-wave{from{transform:rotate(-18deg)}to{transform:rotate(23deg)}}
@keyframes rr-cursor-hello{from{transform:rotate(-3deg)}to{transform:rotate(3deg)}}
@keyframes rr-cursor-reach{0%{stroke-dashoffset:130;opacity:0}18%,65%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:130;opacity:0}}
@keyframes rr-cursor-punch{0%{transform:translate(15px,43px) scale(.8)}18%,50%{transform:translate(var(--punch-x),var(--punch-y)) scale(1.15)}100%{transform:translate(15px,43px) scale(.8)}}
@keyframes rr-cursor-impact{0%{opacity:0;transform:scale(.3)}20%{opacity:.9}100%{opacity:0;transform:scale(1.45)}}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none){
  html.rr-cursor-active,html.rr-cursor-active *{cursor:none!important}
  .rr-cursor-toggle{display:inline-flex}
}
@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce),(forced-colors:active){
  .rr-robot-pointer,.rr-cursor-impact,.rr-cursor-toggle{display:none!important}
  .rr-robot-pointer *{animation:none!important}
}
@media print{.rr-robot-pointer,.rr-cursor-impact,.rr-cursor-toggle{display:none!important}}
