.cursor {
    position: fixed;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    pointer-events: none;
    z-index: 9999;
}

.cursor-core {
    position: absolute;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, #121212 0%, #2a2a2a 100%);
    border-radius: 50%;
    animation: pulse 1.2s ease-in-out infinite;
}

/* Light mode cursor - using body.darkmode class */
body.darkmode .cursor-core {
    background: radial-gradient(circle, #121212 0%, #2a2a2a 100%);
    
}

body.darkmode .cursor-ring {
    border-color: rgba(18, 18, 18, 0.8);
}

body.darkmode .hover-expand .cursor-ring {
    border-color: rgba(18, 18, 18, 1);
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.2);
        opacity: 0.8;
    }
}

.cursor-ring {
    position: absolute;
    width: 30px;
    height: 30px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(18, 18, 18, 0.5);
    border-radius: 50%;
    transition: all 0.3s ease;
}

.hover-expand .cursor-ring {
    width: 45px;
    height: 45px;
    border-color: rgba(18, 18, 18, 0.8);
}

.hover-expand .cursor-core {
    transform: scale(1.5);
}