/* --- 1. GLOBAL CURSOR HIDING (Aggressive) --- */
body, html, button, a, input, textarea, select, .hover-target {
    cursor: none !important; /* Force hide everywhere */
}

/* Hide Scrollbar */
body::-webkit-scrollbar { display: none; }
body { -ms-overflow-style: none; scrollbar-width: none; }

/* 1. For Chrome, Safari, and Opera */
body::-webkit-scrollbar {
    display: none;
}

/* 2. For Firefox, IE, and Edge */
body, html {
    scrollbar-width: none;  /* Firefox */
    -ms-overflow-style: none;  /* IE and Edge */
}



/* --- 2. THE CURSOR HEAD (The Box) --- */
#blue-cursor {
    position: fixed;
    top: 0;
    left: 0;
    width: 10px;
    height: 10px;
    
    /* NEW COLORS: Hollow Cyan Box */
    background-color: transparent;
    border: 2px solid #00f3ff; /* Electric Cyan */
    box-shadow: 0 0 10px #00f3ff; /* Glow */
    
    z-index: 10000;
    pointer-events: none;
    
    /* Center Pivot */
    margin-top: -7px;
    margin-left: -7px;

    /* Instant movement on left/top, Smooth Tilt on transform */
    transition: transform 0.1s ease-out, background-color 0.2s, width 0.2s;
}

/* --- 3. THE SMOKE PARTICLES --- */
.blue-smoke {
    position: fixed;
    width: 6px;
    height: 6px;
    background-color: #80e5ff; /* Ice Blue */
    pointer-events: none;
    z-index: 9999;
    opacity: 0.6;
    
    /* Rising Animation */
    animation: smokeRise 0.8s forwards;
}

@keyframes smokeRise {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.6;
    }
    100% {
        /* Moves UP 60px and fades out */
        transform: translate(-50%, -60px) scale(0);
        opacity: 0;
    }
}

/* --- 4. HOVER STATE --- */
/* When hovering, box fills up solid blue */
body.hovering #blue-cursor {
    background-color: #00f3ff; /* Solid fill */
    box-shadow: 0 0 20px #00f3ff; /* Stronger glow */
    transform: scale(0.8) !important; /* Shrinks slightly to look precise */
}

/* --- 5. CLICK STATE --- */
body.clicking #blue-cursor {
    background-color: white; /* Flash white */
    border-color: white;
    transform: scale(0.6) !important;
}