/* ============================================
   PFCA — MOUSE EFFECTS CSS
   ============================================ */

/* Custom Cursor (Desktop Only) */
.pfc-custom-cursor {
    position: fixed;
    top: 0; left: 0;
    pointer-events: none;
    z-index: 10001;
    mix-blend-mode: difference;
}

.pfc-cursor-dot {
    position: fixed;
    width: 8px;
    height: 8px;
    background: #00D4AA;
    border-radius: 50%;
    pointer-events: none;
}

.pfc-cursor-ring {
    position: fixed;
    width: 42px;
    height: 42px;
    border: 1.5px solid rgba(0, 212, 170, 0.45);
    border-radius: 50%;
    pointer-events: none;
    transition: width 0.4s ease, height 0.4s ease, border-color 0.4s ease, background 0.4s ease;
}

.pfc-custom-cursor.pfc-cursor-expanded .pfc-cursor-dot {
    opacity: 0;
    transform: scale(0);
}

.pfc-custom-cursor.pfc-cursor-expanded .pfc-cursor-ring {
    width: 55px;
    height: 55px;
    border-color: #00D4AA;
    background: rgba(0, 212, 170, 0.08);
}

/* Hide default cursor on desktop */
@media (min-width: 769px) {
    body:not(.pfc-no-cursor-effects) { cursor: none; }
    body:not(.pfc-no-cursor-effects) a,
    body:not(.pfc-no-cursor-effects) button,
    body:not(.pfc-no-cursor-effects) [role="button"] { cursor: none; }
}

/* Magnetic Button Base */
.pfc-magnetic, .pfc-btn {
    transition: transform 0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
    will-change: transform;
}

/* Text Scramble Links */
.pfc-scramble {
    display: inline-block;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .pfc-custom-cursor { display: none !important; }
    body { cursor: auto !important; }
}

@media (max-width: 768px) {
    .pfc-custom-cursor { display: none !important; }
    body { cursor: auto !important; }
}
