:root{--cursor-size: 30px;--cursor-size-pointer: 40px;--cursor-color: #0ea5e9;--cursor-border: #0284c7;--cursor-trail-color: rgba(14, 165, 233, .4)}html,body,#root{cursor:none!important}*,*:before,*:after,.hide-native-cursor,.hide-native-cursor *{cursor:none!important}.custom-cursor{position:fixed;pointer-events:none;z-index:9999;left:0;top:0;width:var(--cursor-size);height:var(--cursor-size);border:2px solid var(--cursor-border);border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(14,165,233,.3),rgba(14,165,233,.1),transparent);box-shadow:0 0 15px #0ea5e966,inset 0 0 10px #0ea5e933;transform:translate(-50%,-50%);transition:opacity .3s ease;will-change:transform}.custom-cursor:before{content:"";position:absolute;width:8px;height:8px;background:linear-gradient(135deg,var(--cursor-color),#06b6d4);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px var(--cursor-color)}.cursor-trail{position:fixed;pointer-events:none;z-index:9998;width:8px;height:8px;border-radius:50%;background:var(--cursor-color);box-shadow:0 0 10px var(--cursor-color);transform:translate(-50%,-50%);animation:trail-fade .6s ease-out forwards}@keyframes trail-fade{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(0)}}a,button,input,textarea,select,[role=button],.cursor-pointer{cursor:none!important}.custom-cursor.pointer{width:var(--cursor-size-pointer);height:var(--cursor-size-pointer);border:2px solid var(--cursor-color);background:radial-gradient(circle at 30% 30%,rgba(14,165,233,.4),rgba(14,165,233,.15),transparent);box-shadow:0 0 20px #0ea5e980,inset 0 0 12px #0ea5e94d}.custom-cursor.pointer:before{width:10px;height:10px;box-shadow:0 0 12px var(--cursor-color)}input,textarea,[contenteditable=true]{cursor:none!important}.custom-cursor.text{width:2px;height:24px;border:none;border-left:2px solid var(--cursor-color);border-radius:0;background:transparent;box-shadow:0 0 8px #0ea5e999}.custom-cursor.text:before{display:none}[draggable=true],.cursor-grab{cursor:none!important}.custom-cursor.grab{width:var(--cursor-size-pointer);height:var(--cursor-size-pointer);border:2px solid #8b5cf6;background:radial-gradient(circle at 30% 30%,rgba(139,92,246,.3),rgba(139,92,246,.1),transparent);box-shadow:0 0 20px #8b5cf666,inset 0 0 12px #8b5cf633}.custom-cursor.grab:before{background:linear-gradient(135deg,#8b5cf6,#a78bfa);box-shadow:0 0 10px #8b5cf6}:disabled,[aria-disabled=true],.cursor-not-allowed{cursor:none!important}.custom-cursor.not-allowed{width:var(--cursor-size);height:var(--cursor-size);border:2px solid #ef4444;background:radial-gradient(circle at 30% 30%,rgba(239,68,68,.2),rgba(239,68,68,.05),transparent);box-shadow:0 0 15px #ef44444d}.custom-cursor.not-allowed:before{background:linear-gradient(135deg,#ef4444,#f87171);box-shadow:0 0 8px #ef4444}.custom-cursor.not-allowed:after{content:"";position:absolute;width:100%;height:2px;background:#ef4444;top:50%;left:0;transform:translateY(-50%) rotate(45deg)}.custom-cursor.hidden{opacity:0}@media(prefers-color-scheme:dark){.custom-cursor{--cursor-color: #38bdf8;--cursor-border: #0284c7}}@media(prefers-reduced-motion:reduce){.custom-cursor,.cursor-trail{animation:none!important}}.reveal-up,.reveal-left,.reveal-right{opacity:0;will-change:transform,opacity;transition-property:transform,opacity;transition-duration:.7s;transition-timing-function:cubic-bezier(.22,1,.36,1)}.reveal-up{transform:translateY(28px)}.reveal-left{transform:translate(-28px)}.reveal-right{transform:translate(28px)}.is-visible{opacity:1;transform:translate(0)}@media(prefers-reduced-motion:reduce){.reveal-up,.reveal-left,.reveal-right{transition:none;opacity:1;transform:translate(0)}}
