/* yal-no-animations.css
   ------------------------------------------------------------------
   Flat, motion-free dark shell for performance.

   The animated "skin" (continuous flow/pulse/shimmer/spin keyframes from
   yal-futuristic.css, yal-universe-theme.css, yal-neon-v2.css, etc.) ran
   constantly on nav, posts, badges, the FAB, section headers and more, which
   kept the compositor busy and made the site feel slow.

   This disables every keyframe animation across the project EXCEPT the Monica
   AI surfaces (chat + music studio) and the login screen, which keep their
   animated treatment:
     - body.ym-monica-active   -> Monica AI chat page
     - body.ymm-studio-active  -> Monica AI music studio
     - body.yal-login-active   -> login / "Monica AI" entry screen

   IMPORTANT — why `animation: none` (fully off) rather than a fast/one-shot
   animation: many titles, tabs and nav labels use `-webkit-background-clip:
   text` gradient text. While such an element is animated it lives on its own
   compositing layer, and if that animation is *frozen mid-flight* WebKit/
   Chromium stops clipping the gradient to the glyphs and paints the entire
   gradient box instead (a solid colored rectangle). A fully static (never
   animated) gradient-clipped element clips correctly, so we turn the animation
   completely off here.

   Loaded last so it wins the cascade.
   ------------------------------------------------------------------ */

body:not(.ym-monica-active):not(.ymm-studio-active):not(.yal-login-active) *,
body:not(.ym-monica-active):not(.ymm-studio-active):not(.yal-login-active) *::before,
body:not(.ym-monica-active):not(.ymm-studio-active):not(.yal-login-active) *::after {
  animation: none !important;
}

/* Keep genuine busy/loading spinners rotating so they never look stuck. The
   extra class/attribute on top of the :not() chain wins specificity over the
   freeze rule above. */
@keyframes yal-na-spin {
  to {
    transform: rotate(360deg);
  }
}

body:not(.ym-monica-active):not(.ymm-studio-active):not(.yal-login-active) [class*="spinner"] {
  animation: yal-na-spin 0.9s linear infinite !important;
}

body:not(.ym-monica-active):not(.ymm-studio-active):not(.yal-login-active) .yal-compose-upload-ring {
  animation: yal-universe-ring-spin 0.9s linear infinite !important;
}

/* Monica AI brand title: render as a stable, static gradient. A frozen/
   compositing gradient-clipped title otherwise paints as a solid block, which
   is exactly the broken "blue rectangle" that replaced the Monica AI text.
   Turning its animation fully off keeps the text crisp and gradient-filled
   while the rest of the Monica surface keeps its motion. */
#ym-monica .ym-logo-text,
body.ym-isweet-shell #ym-monica .ym-logo-text {
  animation: none !important;
  background: linear-gradient(100deg, #1d9bf0, #8a63ff, #f0249b, #ff6ec7, #38bdf8, #1d9bf0) !important;
  background-size: 100% auto !important;
  background-position: 0 0 !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  transform: none !important;
  will-change: auto !important;
}
