/* ==========================================
   ULTRAKIT INTERACTIVE CURSOR
   ========================================== */
.ultrakit-icr-note { padding: 16px 20px; border-radius: 14px; background: #f3f1ff; border: 1.5px dashed #6c5ce7; color: #4b3fc0; font-size: 13px; line-height: 1.5; text-align: center; }
.ultrakit-icr-note span { font-weight: 600; opacity: 0.85; }

.ukicr-layer { position: fixed; left: 0; top: 0; z-index: 999998; pointer-events: none; will-change: transform; opacity: 0; transition: opacity 0.3s ease; contain: layout style; }
.ukicr-layer.is-on { opacity: 1; }
.ukicr-layer * { pointer-events: none; }
.ukicr-inner { display: flex; align-items: center; justify-content: center; border-radius: 50%; transform: scale(1); transition: transform 0.28s cubic-bezier(.22,.9,.3,1), width 0.28s ease, height 0.28s ease, background 0.25s ease, border-color 0.25s ease, opacity 0.25s ease; }
.ukicr-dot .ukicr-inner { background: var(--ukc-1); }
.ukicr-ring .ukicr-inner { border: 2px solid var(--ukc-1); background: transparent; }
.ukicr-ring.is-hover .ukicr-inner { background: color-mix(in srgb, var(--ukc-1) 14%, transparent); }
.ukicr-blob .ukicr-inner { background: #ffffff; }
.ukicr-glow .ukicr-inner { background: radial-gradient(circle, color-mix(in srgb, var(--ukc-1) 55%, transparent) 0%, color-mix(in srgb, var(--ukc-2) 22%, transparent) 45%, transparent 70%); filter: blur(2px); }
.ukicr-label .ukicr-inner { background: linear-gradient(135deg, var(--ukc-1), var(--ukc-2)); color: #ffffff; font-family: inherit; font-size: 12px; font-weight: 800; letter-spacing: 0.5px; text-transform: uppercase; box-shadow: 0 10px 24px color-mix(in srgb, var(--ukc-1) 40%, transparent); }
.ukicr-text { font-family: inherit; white-space: nowrap; }
.ukicr-layer.is-hover.has-text .ukicr-inner { background: linear-gradient(135deg, var(--ukc-1), var(--ukc-2)); color: #ffffff; border-color: transparent; font-size: 12px; font-weight: 800; letter-spacing: 0.4px; text-transform: uppercase; }
.ukicr-layer.is-down .ukicr-inner { transform: scale(0.8) !important; }
.ukicr-layer.is-text .ukicr-inner { transform: scale(0.35) !important; }
.ukicr-trail-dot { position: fixed; left: 0; top: 0; z-index: 999997; pointer-events: none; border-radius: 50%; background: linear-gradient(135deg, var(--ukc-1), var(--ukc-2)); will-change: transform; }

.ukicr-ripple { position: fixed; z-index: 999997; pointer-events: none; border-radius: 50%; border: 2px solid var(--ukc-1); transform: translate(-50%, -50%) scale(0); animation: ukIcrRipple 0.7s ease-out forwards; }
@keyframes ukIcrRipple { to { transform: translate(-50%, -50%) scale(1); opacity: 0; } }

html.ukicr-hide-native, html.ukicr-hide-native * { cursor: none !important; }
html.ukicr-hide-native input, html.ukicr-hide-native textarea, html.ukicr-hide-native [contenteditable] { cursor: text !important; }
