/* Preserve interaction feedback and game animations; stop decorative loops. */
html.perf-lite body :is(
  .sb-brand-inner-text, .sb-typing-wrap, .brand-part1, .brand-part2, .fp,
  .sb-logo-main, .sb-logo-stage, .hd-avatar, .hd-desc-shine, .hd-desc-icon,
  .hd-profile-card .hd-verified, .hd-profile-card .hd-verified__flame,
  .hd-badge-online, .sb-avatar-ring, .sb-vip-card__shine, .sb-vip-icon,
  .sb-vip-progress-bar, .sb-user-vip-tag, .vip-badge,
  .vs-wrap, .vs-svg, .vs-particles, .rank-emblem, .rank-emblem__image,
  .rank-emblem__aura, .rank-emblem__particles i,
  .sp-card[data-store-product] .sp-stock-badge:not(.out),
  .sp-card[data-store-product] .sp-stock-badge.out, .sp-stock-badge,
  .sp-feature-list li, .pm-feature-list li, .pd-feature-list li,
  .hct-shell, .hct-icon, .hmt-card, .hmt-star, .hmt-live i,
  .sp-store-glass-head, .sp-store-glass-head__spark i,
  .sp-random-divider__gem, .sp-random-section-head__spark i,
  .ac-trigger.ac-trigger--robot, .ac-live-dot,
  .ambient-music__launcher, .ambient-music__glow,
  .site-cloud-footer__shell, .site-cloud-footer__cloud,
  .site-cloud-footer__spark, .site-cloud-footer__character,
  .site-cloud-footer__character-image, .site-cloud-footer__character-spark,
  .site-cloud-footer__character-mist
),
html.perf-lite body :is(
  .sb-brand-fire .fire-wrap, .sb-logo-stage, .hd-desc-icon, .hd-verified,
  .hd-badge-online, .sb-user-vip-tag, .sb-vip-progress-bar, .vip-badge,
  .vs-wrap, .vs-particles, .rank-emblem,
  .sp-card[data-store-product] .sp-stock-badge:not(.out), .sp-stock-badge,
  .sp-feature-list li, .pm-feature-list li, .pd-feature-list li,
  .hct-shell, .hct-icon, .hmt-card, .sp-store-glass-head,
  .sp-random-divider__gem, .ac-trigger.ac-trigger--robot,
  .ambient-music__launcher, .site-cloud-footer__shell,
  .site-cloud-footer__character
)::before,
html.perf-lite body :is(
  .sb-brand-fire .fire-wrap, .sb-logo-stage, .hd-desc-icon, .hd-verified,
  .sb-user-vip-tag, .sb-vip-progress-bar, .vip-badge, .vs-wrap, .vs-particles,
  .rank-emblem, .sp-feature-list li, .pm-feature-list li, .pd-feature-list li,
  .hct-shell, .hct-icon, .sp-random-divider__gem,
  .ac-trigger.ac-trigger--robot, .ambient-music__launcher
)::after {
  animation: none !important;
}

/* Avoid reserving a compositor texture for every catalogue card. */
html.perf-lite :is(.sp-card,.app-card,.product-card,.hfr-card,.hd-stat-card,.hd-action-btn,.contact-ch,.blog-card,.fb-carousel-track) {
  will-change: auto !important;
}
html.perf-lite body :is(.topbar,.topbar.scrolled,.hct-item,.sp-stock-badge,.sp-store-glass-head,.hfr-state) {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* Pause remaining effects outside the viewport or while the tab is hidden. */
html.perf-background *, html.perf-background *::before, html.perf-background *::after,
.perf-offscreen, .perf-offscreen::before, .perf-offscreen::after,
.perf-offscreen *, .perf-offscreen *::before, .perf-offscreen *::after {
  animation-play-state: paused !important;
}

html.perf-lite .fx-click-ring, html.perf-lite .fx-click-core,
html.perf-lite .fx-click-spark, html.perf-lite .fx-nav-sweep {
  display: none !important;
}
