.onform-cursor {
  position:fixed; top:0; left:0; width:10px; height:10px;
  border:0; border-radius:50%; background:#012bba;
  z-index:2147483647; pointer-events:none; opacity:0; visibility:hidden;
  transition:width .2s ease,height .2s ease,opacity .12s ease;
}
.onform-cursor.is-visible { opacity:1; visibility:visible; }
.onform-cursor.is-contrast { background:#fff; }
/* Read the actual pixels beneath the dot, including glyphs and photographs.
   Thresholding keeps contrast strictly black/white rather than inverted hues. */
@supports (backdrop-filter: grayscale(1)) or (-webkit-backdrop-filter: grayscale(1)) {
  .onform-cursor {
    background:transparent;
    mix-blend-mode:normal;
    -webkit-backdrop-filter:grayscale(1) contrast(100) invert(1);
    backdrop-filter:grayscale(1) contrast(100) invert(1);
  }
  .onform-cursor.is-contrast { background:transparent; }
}
.onform-cursor.is-hovering {
  width:16px; height:16px;
}
@media(hover:hover) and (pointer:fine) {
  html.has-brand-cursor,html.has-brand-cursor * { cursor:none!important; }
  html.brand-cursor-enabled .portfolio-view-cursor { display:none!important; }
  html.brand-cursor-enabled body.has-work-cursor .work-row { cursor:pointer; }
}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce) {
  .onform-cursor { display:none; }
}

/* ONFORM blue on white page surfaces; photographic contrast stays adaptive. */
.onform-cursor.is-light-surface {
  background:var(--blue,#012bba);
  mix-blend-mode:normal;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
