/**
 * Smart Lazy Load — Frontend Styles
 */

/* Unloaded image */
img.sll-img {
    filter: blur(0);
    transition: opacity 0.4s ease, filter 0.4s ease;
}

/* Blur placeholder style */
img.sll-img[data-src] {
    filter: blur(8px);
    transform: scale(1.02); /* prevent blur edge bleed */
}

/* Loaded state */
img.sll-loaded {
    filter: none;
    transform: none;
}

/* Background images */
.sll-bg {
    background-color: transparent;
}

/* Error state */
img.sll-error {
    opacity: 0.4;
    filter: grayscale(1);
}
