/* ScopeFX site-wide cursor / logo interaction layer v6.1 */
.scopefx-cursor { position: fixed; left: 0; top: 0; z-index: 9999; width: 23px; height: 29px; pointer-events: none; transform: translate3d(-80px,-80px,0); will-change: transform; transition: opacity .04s linear; }
.scopefx-cursor-shape { position: absolute; inset: 0; transform-origin: 2px 2px; transition: transform .08s steps(2, end), filter .08s linear; filter: drop-shadow(2px 2px 0 rgba(0,0,0,.42)); }
.scopefx-cursor-shape::before, .scopefx-cursor-shape::after { content: ""; position: absolute; inset: 0; clip-path: polygon(0 0, 0 78%, 24% 59%, 40% 100%, 57% 92%, 42% 56%, 78% 56%); }
.scopefx-cursor-shape::before { background: #9bf0d3; }
.scopefx-cursor-shape::after { inset: 2px 3px 3px 2px; background: #071820; }
.scopefx-cursor.is-action .scopefx-cursor-shape { transform: rotate(-5deg) scale(1.07); filter: drop-shadow(2px 2px 0 rgba(0,0,0,.42)) drop-shadow(0 0 3px rgba(53,209,162,.24)); }
.scopefx-cursor.is-action-enter .scopefx-cursor-shape { animation: scopefx-action-enter .20s steps(3, end) 1; }
@keyframes scopefx-action-enter { 0% { transform: rotate(0deg) scale(1); } 40% { transform: rotate(-8deg) scale(1.10); } 70% { transform: rotate(-2deg) scale(1.04); } 100% { transform: rotate(-5deg) scale(1.07); } }
.scopefx-cursor.is-cta .scopefx-cursor-shape::before { animation: scopefx-cta-mint .90s steps(2, end) infinite; }
@keyframes scopefx-cta-mint { 0%, 100% { background: #9bf0d3; } 50% { background: #d8fff2; } }
.scopefx-cursor.is-down .scopefx-cursor-shape { animation: none; transform: translate(1px,1px) scale(.94); }
.scopefx-cursor.is-click-flash .scopefx-cursor-shape { animation: scopefx-click-flash .16s steps(2, end) 1; }
@keyframes scopefx-click-flash { 0% { filter: drop-shadow(2px 2px 0 rgba(0,0,0,.42)); } 50% { filter: drop-shadow(2px 2px 0 rgba(0,0,0,.42)) drop-shadow(0 0 4px rgba(216,255,242,.55)); } 100% { filter: drop-shadow(2px 2px 0 rgba(0,0,0,.42)); } }
.scopefx-cursor.is-native { opacity: 0; }
.scopefx-trail-pixel { position: fixed; z-index: 9998; width: 3px; height: 3px; pointer-events: none; background: #35d1a2; opacity: .42; box-shadow: 0 0 3px rgba(53,209,162,.18); animation: scopefx-trail-fade .24s steps(4, end) forwards; }
@keyframes scopefx-trail-fade { 0% { opacity: .42; transform: translate(0,0) scale(1); } 100% { opacity: 0; transform: translate(var(--scopefx-trail-x, 0), var(--scopefx-trail-y, 6px)) scale(.55); } }
.scopefx-logo-boot { animation: scopefx-logo-boot .62s steps(5, end) both; }
@keyframes scopefx-logo-boot { 0% { transform: translateY(0) scale(1); box-shadow: 0 0 0 rgba(53,209,162,0); } 22% { transform: translateY(-1px) scale(1.04); box-shadow: 0 0 0 1px rgba(120,231,194,.45), 0 0 12px rgba(53,209,162,.22); } 48% { transform: translateY(0) scale(.98); box-shadow: 0 0 0 2px rgba(120,231,194,.18), 0 0 22px rgba(53,209,162,.2); } 72% { transform: translateY(-1px) scale(1.02); } 100% { transform: translateY(0) scale(1); box-shadow: 0 0 18px rgba(53,209,162,.14); } }
@media (hover: hover) and (pointer: fine) { html.scopefx-cursor-on, html.scopefx-cursor-on body, html.scopefx-cursor-on a, html.scopefx-cursor-on button, html.scopefx-cursor-on summary, html.scopefx-cursor-on [role="button"] { cursor: none; } html.scopefx-cursor-on input, html.scopefx-cursor-on textarea, html.scopefx-cursor-on select, html.scopefx-cursor-on [contenteditable="true"] { cursor: auto; } }
@media (prefers-reduced-motion: reduce) { .scopefx-cursor, .scopefx-trail-pixel { display: none !important; } .scopefx-logo-boot { animation: none !important; } }
