.thinking-bar{
  position:fixed;
  inset:0;
  opacity:0;
  pointer-events:none;
  z-index:0;
  overflow:hidden;
  transition:opacity .3s ease, filter .3s ease;
  will-change:opacity, filter;
  filter:saturate(1) brightness(1);
  mix-blend-mode:screen;
}

.thinking-bar.active{
  opacity:.92;
  filter:saturate(1.08) brightness(1.04);
}

.thinking-bar::before,
.thinking-bar::after{
  content:"";
  position:absolute;
  inset:auto;
  border-radius:999px;
  will-change:transform, opacity;
}

.thinking-bar::before{
  width:56vmax;
  height:56vmax;
  top:-22vmax;
  left:-14vmax;
  opacity:.34;
  filter:blur(44px);
  background:radial-gradient(circle, rgba(30,168,255,.52) 0%, rgba(76,111,255,.24) 38%, rgba(0,0,0,0) 72%);
  animation:thinking-orb-drift 11s ease-in-out infinite alternate;
}

.thinking-bar::after{
  width:58vmax;
  height:58vmax;
  top:-18vmax;
  right:-18vmax;
  opacity:.3;
  filter:blur(48px);
  background:radial-gradient(circle, rgba(255,79,163,.48) 0%, rgba(133,92,255,.24) 40%, rgba(0,0,0,0) 74%);
  animation:thinking-orb-drift-alt 14s ease-in-out infinite alternate;
}

.thinking-bar__stream{
  position:absolute;
  inset:-10%;
  overflow:hidden;
  background:
    radial-gradient(70% 48% at 50% 0%, rgba(123,92,255,.1), rgba(0,0,0,0) 70%),
    linear-gradient(180deg, rgba(12,14,32,.08), rgba(0,0,0,0) 32%, rgba(7,9,18,.1) 100%);
}

.thinking-bar__stream::before,
.thinking-bar__stream::after{
  content:"";
  position:absolute;
  left:0;
  width:220vw;
  border-radius:999px;
  will-change:transform, opacity;
  transform:translate3d(-42%, 0, 0);
}

.thinking-bar__stream::before{
  top:10vh;
  height:34vh;
  opacity:.6;
  filter:blur(28px);
  background:linear-gradient(
    90deg,
    rgba(0,0,0,0) 0%,
    rgba(30,168,255,.1) 8%,
    rgba(30,168,255,.46) 20%,
    rgba(76,111,255,.56) 34%,
    rgba(133,92,255,.64) 48%,
    rgba(255,79,163,.52) 62%,
    rgba(44,200,255,.44) 76%,
    rgba(0,0,0,0) 100%
  );
  animation:thinking-sweep 4.4s linear infinite;
}

.thinking-bar__stream::after{
  top:30vh;
  height:42vh;
  opacity:.42;
  filter:blur(40px);
  background:linear-gradient(
    90deg,
    rgba(0,0,0,0) 0%,
    rgba(76,111,255,.08) 12%,
    rgba(76,111,255,.28) 28%,
    rgba(133,92,255,.38) 44%,
    rgba(255,79,163,.34) 58%,
    rgba(30,168,255,.26) 76%,
    rgba(0,0,0,0) 100%
  );
  animation:thinking-sweep-alt 6.2s linear infinite;
}

@keyframes thinking-sweep{
  from{transform:translate3d(-48%, 0, 0)}
  to{transform:translate3d(4%, 0, 0)}
}

@keyframes thinking-sweep-alt{
  from{transform:translate3d(-38%, 0, 0)}
  to{transform:translate3d(10%, 0, 0)}
}

@keyframes thinking-orb-drift{
  from{transform:translate3d(0, 0, 0) scale(1)}
  to{transform:translate3d(8vw, 4vh, 0) scale(1.08)}
}

@keyframes thinking-orb-drift-alt{
  from{transform:translate3d(0, 0, 0) scale(1)}
  to{transform:translate3d(-7vw, 5vh, 0) scale(1.06)}
}

@media (prefers-reduced-motion: reduce){
  .thinking-bar::before,
  .thinking-bar::after,
  .thinking-bar__stream::before,
  .thinking-bar__stream::after{
    animation:none;
    transform:translate3d(0, 0, 0);
  }
}
