/* cursor.css */

/* Default: System cursor (not custom) */
body.system-cursor,
body.system-cursor *,
body.system-cursor a,
body.system-cursor button,
body.system-cursor input,
body.system-cursor textarea,
body.system-cursor select,
body.system-cursor label,
body.system-cursor [role="button"],
body.system-cursor [onclick],
body.system-cursor .clickable {
    cursor: auto !important;
}

/* Custom cursor: Hide default cursor on ALL elements when custom is enabled */
body:not(.system-cursor),
body:not(.system-cursor) *,
body:not(.system-cursor) a,
body:not(.system-cursor) button,
body:not(.system-cursor) input,
body:not(.system-cursor) textarea,
body:not(.system-cursor) select,
body:not(.system-cursor) label,
body:not(.system-cursor) [role="button"],
body:not(.system-cursor) [onclick],
body:not(.system-cursor) .clickable,
body:not(.system-cursor) *:hover,
body:not(.system-cursor) *:active,
body:not(.system-cursor) *:focus,
body:not(.system-cursor) [style*="cursor: pointer"],
body:not(.system-cursor) .cursor-pointer,
body:not(.system-cursor) button,
body:not(.system-cursor) .btn,
body:not(.system-cursor) .offer-card,
body:not(.system-cursor) .service-card,
body:not(.system-cursor) #cursorToggle {
    cursor: none !important;
}

#venom-cursor {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 999999;
    mix-blend-mode: normal;
    display: none;
}

/* Show custom cursor only when not system cursor */
body:not(.system-cursor) #venom-cursor {
    display: block;
}

@media (pointer: coarse) {
    body, html, a, button, input, textarea, select {
        cursor: auto !important;
    }

    #venom-cursor {
        display: none;
    }
}

body.system-cursor,
body.system-cursor * {
    cursor: auto !important; 
}

body.system-cursor #venom-cursor {
    display: none !important;
    opacity: 0;
    pointer-events: none;
}

#cursorToggle {
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 2px solid var(--primary-dark);
    color: var(--primary-dark);
    width: 45px;
    height: 45px;
    border-radius: 12px;
    cursor: auto; /* Use system cursor for toggle button */
    transition: all 0.3s ease;
    font-size: 20px;
}

#cursorToggle:hover {
    background: var(--primary-dark);
    color: var(--primary-light);
}

body:not(.system-cursor) #cursorToggle {
    cursor: none; /* Use custom cursor when custom is enabled */
}

.top-banner.dark-theme #cursorToggle {
    border-color: var(--primary-light);
    color: var(--primary-light);
}

.top-banner.dark-theme #cursorToggle:hover {
    background: var(--primary-light);
    color: var(--primary-dark);
}