/* KP-SMOOTH v1.37.8: smoother scrolling. Only pauses or simplifies effects; never hides content. */

/* 1. Effects that loop forever pause while the page is scrolling (kp-smooth.js marks them .kp-loop) */
.kp-scrolling .kp-loop,.kp-scrolling .kp-loop::before,.kp-scrolling .kp-loop::after{animation-play-state:paused!important}

/* 2. Slower phones: drop the frosted-glass blur on bars that are already nearly solid (marked .kp-noblur) */
.kp-lite .kp-noblur{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}

/* 3. The fixed page background moves to its own layer (made by kp-smooth.js), so scrolling doesn't repaint the whole screen */
.kp-bg-layer{position:fixed;inset:0;z-index:-1;pointer-events:none;transform:translateZ(0);background-attachment:scroll!important}

/* 4. Pulses and glows that animated box-shadow (a full repaint every frame) now use a cheap ring that only scales and fades */
@keyframes kpRing{0%{transform:scale(1);opacity:.55}80%,100%{transform:scale(2.6);opacity:0}}
@keyframes kpRingSoft{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.45}}
.kpnt-dot,.kph-pulse .dot,.kph-live .hd i{position:relative;animation:none!important}
.kph-pulse .dot,.kph-live .hd i{box-shadow:none!important}
.kpnt-dot::after,.kph-pulse .dot::after,.kph-live .hd i::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:kpRing 2s ease-out infinite;will-change:transform,opacity}
.kph-still .kph-pulse .dot::after,.kph-still .kph-live .hd i::after{animation-play-state:paused}
.khn-tag.new{animation:none!important;box-shadow:0 0 12px 1px rgba(236,72,153,.45)}
.kpc-m.fresh .kpc-av::after{animation:kpRingSoft 2s ease-in-out infinite!important}

@media (prefers-reduced-motion:reduce){.kpnt-dot::after,.kph-pulse .dot::after,.kph-live .hd i::after,.kpc-m.fresh .kpc-av::after{animation:none!important}}
