/* ============================================================
   CUSTOM PREMIUM POINTER — cursor.css
   ============================================================ */

@media (pointer: fine) and (min-width: 1024px) {
    body {
        cursor: none;
    }

    a,
    button,
    [data-project-id],
    .portfolio-item,
    .card {
        cursor: none !important;
    }

    #cursor-dot {
        width: 6px;
        height: 6px;
        background-color: var(--sky);
        position: fixed;
        top: 0;
        left: 0;
        border-radius: 50%;
        z-index: 10001;
        pointer-events: none;
        will-change: transform;
    }

    #cursor-trail {
        width: 34px;
        height: 34px;
        border: 2px solid var(--sky);
        position: fixed;
        top: 0;
        left: 0;
        border-radius: 50%;
        z-index: 10000;
        pointer-events: none;
        transition: width 0.3s ease, height 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, border-width 0.3s ease;
        opacity: 0.6;
    }

    /* States */
    #cursor-trail.hover {
        width: 60px;
        height: 60px;
        background-color: rgba(0, 180, 255, 0.1);
        border-color: var(--blue);
        border-width: 1px;
        opacity: 1;
    }

    #cursor-dot.hover {
        transform: scale(1.5);
        background-color: var(--blue);
    }
}

/* Hide on touch devices */
@media (pointer: coarse),
(max-width: 1023px) {

    #cursor-dot,
    #cursor-trail {
        display: none !important;
    }

    body {
        cursor: auto !important;
    }
}