/* Lightweight ambient light: no additional GPU canvas or external runtime. */
.interactive-scene { position:relative; isolation:isolate; }
.interactive-scene::before {
  content:""; position:absolute; inset:8% -5%; z-index:-1;
  pointer-events:none; border-radius:50%; filter:blur(32px);
  background:radial-gradient(ellipse at var(--light-x,55%) var(--light-y,45%),#6ba1f330,transparent 65%);
  opacity:.7; animation:wield-light-breathe 8s ease-in-out infinite alternate;
  transition:opacity .7s ease;
}
.interactive-scene[data-state="connected"]::before { opacity:1; }
.interactive-scene:has(#mode-cats[aria-pressed="true"])::before { opacity:.25; }
@keyframes wield-light-breathe { from { transform:scale(.96); } to { transform:scale(1.04); } }
.wield-glow-button {
  position:relative; isolation:isolate;
  transition:transform .4s cubic-bezier(.22,1,.36,1), background-color .4s ease, color .35s ease, box-shadow .4s ease, border-color .4s ease, filter .35s ease !important;
}
.wield-glow-button::after {
  content:""; position:absolute; inset:0; border-radius:inherit;
  pointer-events:none; opacity:0;
  background:radial-gradient(140px circle at var(--light-x,50%) var(--light-y,50%),#d6e8ff28,transparent 75%);
  transition:opacity .4s ease;
}
@media(hover:hover) and (pointer:fine) {
  .wield-glow-button:not(:disabled):hover { box-shadow:0 4px 20px #6ba1f31c; }
  .wield-glow-button:not(:disabled):hover::after { opacity:1; }
}
.wield-glow-button:not(:disabled):focus-visible { box-shadow:0 0 24px #6ba1f33d; }
.wield-glow-button:not(:disabled):active { filter:brightness(1.1); }
.wield-glow-button:not(:disabled):active::after { opacity:1; }
@media(prefers-reduced-motion:reduce) {
  .interactive-scene::before { animation:none; }
  .wield-glow-button,.wield-glow-button::after { transition:none!important; }
}
html.wield-effects-paused .interactive-scene::before { animation-play-state:paused; }

@media(hover:hover) and (pointer:fine){.button.wield-glow-button:hover{transform:translateY(-1px)}}
@media(prefers-reduced-motion:reduce){.button.wield-glow-button:hover{transform:none}}
