/* Blinkit — Éclat : halo lumineux qui suit le curseur sur les cartes.
   Effet purement décoratif, désactivé au toucher et en reduced-motion. */

@media (prefers-reduced-motion: no-preference) {
  .eclat {
    position: relative;
    isolation: isolate;
  }
  .eclat::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: inherit;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.35s var(--ease, ease);
    background: radial-gradient(
      220px circle at var(--ex, 50%) var(--ey, 50%),
      color-mix(in oklch, var(--accent, #1f9d3a) 22%, transparent),
      transparent 62%
    );
  }
  .eclat.eclat-on::after { opacity: 1; }

  /* Fine ligne de contour qui s'illumine au même endroit */
  .eclat::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    border-radius: inherit;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.35s var(--ease, ease);
    padding: 1px;
    background: radial-gradient(
      260px circle at var(--ex, 50%) var(--ey, 50%),
      color-mix(in oklch, var(--accent, #1f9d3a) 70%, transparent),
      transparent 55%
    );
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    mask-composite: exclude;
  }
  .eclat.eclat-on::before { opacity: 0.9; }

  /* le contenu de la carte reste au-dessus du halo */
  .eclat > * { position: relative; z-index: 3; }
}

/* Accessibilité tactile / mouvement réduit : aucun halo. */
@media (hover: none), (prefers-reduced-motion: reduce) {
  .eclat::after, .eclat::before { display: none; }
}
