/* Praxoria Startseite – v535: Lade-/Prüfeffekt für die Kriterien-Rückmeldung.
   Rein visuelle Ergänzung; bestehende Texte bleiben unverändert. */

html body.home.homeRefinedV535 #studioPanel2 .demoNotice{
  position: relative;
  overflow: hidden;
  min-height: 5.65rem;
  transition: border-color .26s ease, background .26s ease, box-shadow .26s ease, opacity .22s ease;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isAwaiting{
  opacity: .56;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isAwaiting .demoNoticeLabel,
html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isAwaiting .demoNoticeText{
  opacity: .22;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking{
  border-color: color-mix(in oklab, var(--accent3) 22%, var(--border));
  background:
    linear-gradient(90deg,
      transparent 0%,
      color-mix(in oklab, var(--accent3) 8%, transparent) 42%,
      color-mix(in oklab, var(--accent3) 12%, transparent) 50%,
      transparent 62%) 0 0 / 230% 100%,
    color-mix(in oklab, var(--surface) 96%, var(--accent3));
  box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--accent3) 6%, transparent);
  animation: praxoriaCriteriaScan 1.12s cubic-bezier(.4,0,.2,1) infinite;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking .demoNoticeLabel,
html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking .demoNoticeText{
  visibility: hidden;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::before,
html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::after{
  content: "";
  position: absolute;
  left: 1.35rem;
  right: 1.35rem;
  border-radius: 999px;
  pointer-events: none;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::before{
  top: 1.32rem;
  width: min(12rem, calc(100% - 2.7rem));
  height: .78rem;
  background:
    linear-gradient(90deg,
      color-mix(in oklab, var(--text) 14%, transparent),
      color-mix(in oklab, var(--text) 7%, transparent),
      color-mix(in oklab, var(--text) 14%, transparent));
  background-size: 220% 100%;
  animation: praxoriaCriteriaPulse .95s ease-in-out infinite;
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::after{
  top: 3.15rem;
  height: .9rem;
  background:
    linear-gradient(90deg,
      color-mix(in oklab, var(--accent3) 15%, transparent) 0 18%,
      transparent 18% 23%,
      color-mix(in oklab, var(--accent3) 11%, transparent) 23% 47%,
      transparent 47% 52%,
      color-mix(in oklab, var(--accent3) 8%, transparent) 52% 100%);
  background-size: 190% 100%;
  animation: praxoriaCriteriaPulse 1.08s ease-in-out infinite reverse;
}

html body.home.homeRefinedV535 #studioPanel2 .critChips:has(+ .demoNotice.isChecking) .critChip.isOn{
  box-shadow:
    0 0 0 1px color-mix(in oklab, var(--accent3) 38%, var(--border)),
    0 0 0 5px color-mix(in oklab, var(--accent3) 10%, transparent);
  transform: translateY(-1px);
}

html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isReadyFlash{
  animation: praxoriaCriteriaReady .68s ease both;
}

@keyframes praxoriaCriteriaScan{
  from{ background-position: 100% 0, 0 0; }
  to{ background-position: -100% 0, 0 0; }
}

@keyframes praxoriaCriteriaPulse{
  0%, 100%{ opacity: .46; background-position: 100% 0; }
  50%{ opacity: .92; background-position: 0 0; }
}

@keyframes praxoriaCriteriaReady{
  0%{ box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--accent3) 18%, transparent); }
  45%{ box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--accent3) 30%, transparent), 0 0 0 5px color-mix(in oklab, var(--accent3) 8%, transparent); }
  100%{ box-shadow: none; }
}

@media (prefers-reduced-motion: reduce){
  html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking,
  html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::before,
  html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isChecking::after,
  html body.home.homeRefinedV535 #studioPanel2 .demoNotice.isReadyFlash{
    animation: none !important;
  }
}
