/* RxCloud CyberLab — shared cyber cursor 2026 */
.rx-cyber-cursor,
.rx-cyber-cursor-pulse{display:none}

@media (hover:hover) and (pointer:fine){
  html.rx-cyber-cursor-active[data-rx-cursor="active"],
  html.rx-cyber-cursor-active[data-rx-cursor="active"] body[data-rx-cursor-surface="active"],
  html.rx-cyber-cursor-active[data-rx-cursor="active"] body[data-rx-cursor-surface="active"] *{
    cursor:none!important;
  }

  .rx-cyber-cursor{
    position:fixed;z-index:2147483646;top:0;left:0;width:0;height:0;
    display:block;pointer-events:none;opacity:0;will-change:transform;
    transition:opacity .16s ease;
  }
  .rx-cyber-cursor.is-visible{opacity:1}
  .rx-cyber-cursor__dot,
  .rx-cyber-cursor__ring,
  .rx-cyber-cursor__cross{position:absolute;display:block;pointer-events:none}
  .rx-cyber-cursor__dot{
    left:-3px;top:-3px;width:6px;height:6px;border-radius:1px;
    background:#a8f7ff;
    box-shadow:0 0 7px #42e6ff,0 0 15px rgba(66,230,255,.8);
    transform:rotate(45deg);
    transition:width .16s ease,height .16s ease,left .16s ease,top .16s ease,transform .16s ease,background .16s ease;
  }
  .rx-cyber-cursor__ring{
    left:-14px;top:-14px;width:28px;height:28px;border:1px solid rgba(66,230,255,.72);border-radius:50%;
    background:radial-gradient(circle,rgba(66,230,255,.045),transparent 64%);
    box-shadow:0 0 0 1px rgba(66,230,255,.06),0 0 15px rgba(66,230,255,.22),inset 0 0 10px rgba(66,230,255,.08);
    transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease,border-radius .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease;
  }
  .rx-cyber-cursor__cross{
    left:-20px;top:-20px;width:40px;height:40px;opacity:.34;
    transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease,opacity .18s ease,transform .18s ease;
  }
  .rx-cyber-cursor__cross::before,
  .rx-cyber-cursor__cross::after{
    content:"";position:absolute;background-repeat:no-repeat;
    filter:drop-shadow(0 0 3px rgba(66,230,255,.72));
  }
  .rx-cyber-cursor__cross::before{
    left:0;top:calc(50% - .5px);width:100%;height:1px;
    background-image:linear-gradient(90deg,rgba(66,230,255,.8) 0 7px,transparent 7px calc(100% - 7px),rgba(66,230,255,.8) calc(100% - 7px));
  }
  .rx-cyber-cursor__cross::after{
    left:calc(50% - .5px);top:0;width:1px;height:100%;
    background-image:linear-gradient(180deg,rgba(66,230,255,.8) 0 7px,transparent 7px calc(100% - 7px),rgba(66,230,255,.8) calc(100% - 7px));
  }

  .rx-cyber-cursor.is-interactive .rx-cyber-cursor__ring{
    left:-19px;top:-19px;width:38px;height:38px;border-color:#8cf2ff;
    box-shadow:0 0 0 1px rgba(66,230,255,.12),0 0 24px rgba(66,230,255,.38),inset 0 0 12px rgba(66,230,255,.12);
  }
  .rx-cyber-cursor.is-interactive .rx-cyber-cursor__cross{left:-24px;top:-24px;width:48px;height:48px;opacity:.68;transform:rotate(45deg)}
  .rx-cyber-cursor.is-interactive .rx-cyber-cursor__dot{background:#fff;box-shadow:0 0 8px #fff,0 0 18px #42e6ff}

  .rx-cyber-cursor.is-text .rx-cyber-cursor__ring{
    left:-6px;top:-13px;width:12px;height:26px;border-radius:4px;border-color:#8cf2ff;
  }
  .rx-cyber-cursor.is-text .rx-cyber-cursor__cross{opacity:0;transform:scale(.7)}
  .rx-cyber-cursor.is-text .rx-cyber-cursor__dot{left:-1px;top:-8px;width:2px;height:16px;border-radius:1px;transform:none}

  .rx-cyber-cursor.is-drag .rx-cyber-cursor__ring{left:-18px;top:-18px;width:36px;height:36px;border-radius:8px;transform:rotate(45deg)}
  .rx-cyber-cursor.is-pressed .rx-cyber-cursor__ring{transform:scale(.76)}
  .rx-cyber-cursor.is-disabled .rx-cyber-cursor__ring{border-color:rgba(255,102,130,.86);box-shadow:0 0 18px rgba(255,102,130,.3)}
  .rx-cyber-cursor.is-disabled .rx-cyber-cursor__dot{background:#ff8da2;box-shadow:0 0 10px rgba(255,102,130,.8)}

  .rx-cyber-cursor-pulse{
    position:fixed;z-index:2147483645;width:10px;height:10px;display:block;pointer-events:none;
    border:1px solid rgba(140,242,255,.88);border-radius:50%;
    box-shadow:0 0 18px rgba(66,230,255,.38);
    transform:translate(-50%,-50%) scale(.25);
    animation:rxCyberCursorPulse .48s cubic-bezier(.16,1,.3,1) forwards;
  }
}

@keyframes rxCyberCursorPulse{
  0%{opacity:.9;transform:translate(-50%,-50%) scale(.25)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(5.2)}
}

@media (prefers-reduced-motion:reduce){
  .rx-cyber-cursor,
  .rx-cyber-cursor *{transition:none!important}
  .rx-cyber-cursor-pulse{display:none!important;animation:none!important}
}
