/* ============================================
   DetectMe Custom Cursor - Classic Pointer with Brand Colors
   ============================================ */

/* Custom Cursor - Main Cursor */
* {
    cursor: none !important;
}

/* Custom Cursor Element - Classic Pointer Shape */
.custom-cursor {
    position: fixed;
    width: 0;
    height: 0;
    pointer-events: none;
    z-index: 1000000;
    transform: translate(0, 0);
    transition: transform 0.1s ease, opacity 0.2s ease, filter 0.2s ease;
    /* Classic pointer shape - triangle pointing up-left */
    border-left: 2px solid var(--color-primary);
    border-top: 2px solid var(--color-primary);
    border-right: 10px solid transparent;
    border-bottom: 10px solid transparent;
    /* Add glow effect */
    filter: drop-shadow(0 0 4px rgba(244, 63, 94, 0.6))
            drop-shadow(0 0 8px rgba(244, 63, 94, 0.4))
            drop-shadow(0 0 12px rgba(244, 63, 94, 0.2));
    transform-origin: 0 0;
}


/* Hover States - Interactive Elements (via JavaScript classes) */
.custom-cursor.cursor-hover {
    border-left-width: 3px !important;
    border-top-width: 3px !important;
    border-right-width: 14px !important;
    border-bottom-width: 14px !important;
    filter: drop-shadow(0 0 6px rgba(244, 63, 94, 0.8))
            drop-shadow(0 0 12px rgba(244, 63, 94, 0.6))
            drop-shadow(0 0 18px rgba(244, 63, 94, 0.4)) !important;
    transform: translate(0, 0) scale(1.2) !important;
}

/* Text Input States */
.custom-cursor.cursor-text {
    border-left: 2px solid var(--color-primary) !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-left-width: 2px !important;
    border-top-width: 0 !important;
    border-right-width: 0 !important;
    border-bottom-width: 0 !important;
    width: 2px !important;
    height: 20px !important;
    transform: translate(0, 0) rotate(0deg) !important;
    filter: drop-shadow(0 0 4px rgba(244, 63, 94, 0.7))
            drop-shadow(0 0 8px rgba(244, 63, 94, 0.4)) !important;
}

/* Disabled/Not Allowed States */
.custom-cursor.cursor-disabled {
    border-left-color: var(--color-error) !important;
    border-top-color: var(--color-error) !important;
    filter: drop-shadow(0 0 4px rgba(239, 68, 68, 0.6))
            drop-shadow(0 0 8px rgba(239, 68, 68, 0.4)) !important;
    opacity: 0.7 !important;
}


/* Hide default cursor on specific elements */
a, button, .btn, input[type="button"], input[type="submit"], [role="button"], .clickable, .cursor-pointer {
    cursor: none !important;
}

input, textarea, [contenteditable="true"], select {
    cursor: none !important;
}

/* Mobile/Tablet - Show default cursor */
@media (max-width: 768px), (hover: none) {
    * {
        cursor: auto !important;
    }
    
    .custom-cursor {
        display: none !important;
    }
}
