/* Shared pointer, above stage chrome but never intercepting input. Native cursor stays available. */
.platform-cursor{position:fixed;inset:0 auto auto 0;width:0;height:0;z-index:2147483000;pointer-events:none;opacity:0;transition:opacity 90ms;will-change:transform}
.platform-cursor::before{content:"";position:absolute;width:100px;height:100px;left:-50px;top:-50px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--color-accent,#248cff) 8%,transparent),transparent 70%)}
.platform-cursor__ring{position:absolute;width:26px;height:26px;left:-13px;top:-13px;border:1px solid color-mix(in srgb,var(--color-accent,#248cff) 50%,#ffffff60);border-radius:50%;transition:width .12s,height .12s,left .12s,top .12s}
.platform-cursor.is-action .platform-cursor__ring{width:34px;height:34px;left:-17px;top:-17px;border-color:var(--color-accent,#248cff)}.platform-cursor.is-visible{opacity:1}
@media(prefers-reduced-motion:reduce),(pointer:coarse),(max-width:1023px){.platform-cursor{display:none}}
