/* Scoped cursor-only styles. Never change document layout, focus rings or native controls. */
.ks-rocket-cursor { position:fixed; top:0; left:0; width:25.6px; height:25.6px; z-index:2147483646; pointer-events:none!important; user-select:none; opacity:0; color:#fff; contain:layout style; }
.ks-rocket-cursor.is-visible { opacity:1; }
.ks-rocket-cursor svg { display:block; width:100%; height:100%; overflow:visible; filter:drop-shadow(0 1px 2px #0009); transform-origin:90.625% 9.375%; }
.ks-rocket-body { fill:#fff; stroke:#D71920; stroke-width:1.5; stroke-linejoin:round; }
.ks-rocket-fin { fill:#D71920; stroke:#fff; stroke-width:1; stroke-linejoin:round; }
.ks-rocket-window { fill:#D71920; }
.ks-rocket-flame { fill:#FF4D5A; }
.ks-rocket-cursor.is-click .ks-rocket-body { fill:#D71920; stroke:#fff; }
.ks-rocket-cursor.is-click .ks-rocket-window { fill:#fff; }
.ks-rocket-cursor.is-pressed svg { transform:scale(.86); }
.ks-rocket-cue { position:absolute; top:29px; left:4px; font:600 8px/1.2 system-ui,sans-serif; letter-spacing:.12em; white-space:nowrap; color:#fff; background:#D71920; border-radius:2px; padding:3px 4px; }
.ks-rocket-cue:empty { display:none; }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none) { .ks-rocket-target { cursor:none!important; } }
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce), (forced-colors:active) { .ks-rocket-cursor { display:none!important; } }
/* A static small flame appears only on actionable hover, never animated. */
.ks-rocket-flame { opacity:0; }
.ks-rocket-cursor.is-click .ks-rocket-flame { opacity:1; }
