/* The original logo remains intact without JS and for reduced motion. */
.kf-logo-dot-away{mask-image:radial-gradient(circle var(--kf-source-radius) at var(--kf-source-x) var(--kf-source-y),transparent 98%,#000 102%);-webkit-mask-image:radial-gradient(circle var(--kf-source-radius) at var(--kf-source-x) var(--kf-source-y),transparent 98%,#000 102%)}
.kf-scroll-dot-layer{position:fixed;inset:0;pointer-events:none!important;z-index:40;overflow:hidden;contain:strict}
.kf-scroll-dot,.kf-scroll-dot-trail{position:absolute;left:0;top:0;width:var(--kf-dot-size,8px);height:var(--kf-dot-size,8px);border-radius:50%;background:#00e5a0;pointer-events:none!important;opacity:0;will-change:transform;transform:translate3d(-30px,-30px,0)}
.kf-scroll-dot{box-shadow:0 0 8px #00e5a025}
@media(prefers-reduced-motion:reduce){.kf-scroll-dot-layer{display:none}.kf-logo-dot-away{mask-image:none!important;-webkit-mask-image:none!important}}
@media print{.kf-scroll-dot-layer{display:none}.kf-logo-dot-away{mask-image:none!important;-webkit-mask-image:none!important}}
/* Native cursor remains available for links, selection and text inputs. */
.kf-scroll-dot-layer{z-index:10020}
.kf-scroll-dot{box-shadow:0 0 9px #00e5a035}
.kf-scroll-dot-rail{position:absolute;right:max(7px,env(safe-area-inset-right));width:2px;background:#00e5a0;border-radius:2px;opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.kf-scroll-dot-rail{display:none}}

/* Position reference only: mobile shows the point and its short trail. */
.kf-scroll-dot-rail{background:transparent!important;opacity:0!important}
