/* Optional: Admin */
.neo-ani-admin .wrap h1 { color:#0073aa; }

/* Hover-Micro-Interaction (nur 1x) */
.awardelement .slide-entry:hover .award-badge img {
  transform: translateY(-1px) scale(1.015);
  transition: transform 250ms cubic-bezier(.2,.65,.2,1);
}

/* Fade-in from bottom */
.awardelement .slide-entry {
  opacity: 0;
  transform: translateY(24px);
  will-change: opacity, transform;
}
.awardelement .slide-entry.in-view {
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity 900ms cubic-bezier(.2,.65,.2,1),
    transform 900ms cubic-bezier(.2,.65,.2,1);
  /* kein transition-delay – Stagger kommt aus dem JS */
}

/* Bild-Wrapper für Glanz */
.awardelement .award-badge {
  position: relative;
  display: inline-block;
  overflow: hidden;
  line-height: 0;
  isolation: isolate; /* verhindert Blend-Leaks */
}

/* Sheen-Variablen – gerne anpassen */
/* Sichtbarer, zweilagiger Sheen */
.awardelement {
  --sheen-duration: 1.1s;     /* Laufzeit des Glanzes */
  --sheen-strong:   0.85;      /* kräftiger Kern (0..1) */
  --sheen-soft:     0.40;      /* weiche Aura (0..1) */

  /* RUHE-POSITION: Peak steht über dem Pokal (Mitte). 
     Wenn du den „Parkplatz“ woanders willst: z.B. -70% oder -50% testen. */
  --sheen-rest: -60% 0;
}

.awardelement .award-badge::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  filter: blur(.5px);
  mix-blend-mode: screen; /* ggf. auskommentieren, wenn zu kräftig */

  /* 2 Layer: heller Kern + weichere Aura */
  background-image:
    linear-gradient(
      90deg,
      rgba(255,255,255,0) 46%,
      rgba(255,255,255,var(--sheen-strong)) 50%,
      rgba(255,255,255,0) 54%
    ),
    linear-gradient(
      90deg,
      rgba(255,255,255,0) 35%,
      rgba(255,255,255,var(--sheen-soft)) 50%,
      rgba(255,255,255,0) 65%
    );

  background-size: 220% 100%, 220% 100%;
  /* RUHE-Position sichtbar über dem Pokal: */
  background-position: var(--sheen-rest), var(--sheen-rest);
  will-change: background-position;
}

/* Maske bleibt wie gehabt */
.awardelement .award-badge.mask-supported::after {
  -webkit-mask-image: var(--award-mask);
  mask-image: var(--award-mask);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

/* Trigger-Klasse: Animation OHNE forwards, damit es danach in die Ruhe-Position zurückspringt */
.awardelement .award-badge.sheen-once::after {
  animation: sheen-sweep var(--sheen-duration) ease-out;
}

/* explizit von links außerhalb nach rechts außerhalb */
@keyframes sheen-sweep {
  from { background-position: -120% 0, -120% 0; }
  to   { background-position:  120% 0,  120% 0; }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  .awardelement .slide-entry {
    opacity: 1; transform: none; transition: none !important;
  }
  .awardelement .award-badge::after { display: none; }
}
