/* Оформление курсора нейтральное: цвет и глиф задаёт сайт через --cur-ink / #fx-glyph. */
.fx-cur{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;opacity:0;
  transition:opacity var(--t-quick) var(--e-set);mix-blend-mode:var(--cur-blend,normal)}
.fx-cur.on{opacity:1}
.fx-cur-dot{position:absolute;left:-2.5px;top:-2.5px;width:5px;height:5px;border-radius:50%;
  background:var(--cur-ink,#fff)}
.fx-cur-ring{position:absolute;left:-19px;top:-19px;width:38px;height:38px;display:grid;
  place-items:center;color:var(--cur-ink,#fff);
  transition:width var(--t-quick) var(--e-set),height var(--t-quick) var(--e-set),
             left var(--t-quick) var(--e-set),top var(--t-quick) var(--e-set),
             opacity var(--t-instant) linear}
.fx-cur-ring svg{width:100%;height:100%;display:block;overflow:visible}
.fx-cur-lbl{position:absolute;left:26px;top:12px;white-space:nowrap;font-size:10px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--cur-ink,#fff);opacity:0}

.fx-cur.is-link  .fx-cur-ring{left:-27px;top:-27px;width:54px;height:54px}
.fx-cur.is-scrub .fx-cur-ring{left:-31px;top:-13px;width:62px;height:26px}
.fx-cur.is-drag  .fx-cur-ring{left:-34px;top:-16px;width:68px;height:32px}
.fx-cur.is-media .fx-cur-ring{left:-38px;top:-38px;width:76px;height:76px}
.fx-cur.is-hidden .fx-cur-ring,.fx-cur.is-hidden .fx-cur-dot{opacity:0}
