/* Beo/Flexoptix: Arbeitsanzeige = rotierendes EYECON in FO Orange (#FF6B00) statt Punkt.
   Deckt beide LibreChat-Indikatoren ab: den pulsierenden Punkt vor dem ersten Token
   (.submitting .result-thinking) und den Streaming-Punkt am Textende (.result-streaming …:after).
   Reduzierte Bewegung: sanftes Pulsieren statt Rotation (Brand-Motion-Regel: Fade/Scale). */
.submitting .result-thinking:empty:last-child:after,
.result-streaming > :not(ol):not(ul):not(pre):last-child:after,
.result-streaming > pre:last-child code:after,
.result-streaming > :is(ul, ol):last-child > li:last-child:not(:has(> :is(ul, ol, pre))):after,
.result-streaming > ol:last-child > li:last-child:after,
.result-streaming > ul:last-child > li:last-child:after,
.result-streaming > ol:last-child > li:last-child > :is(ul, ol, pre) ~ :after,
.result-streaming > ul:last-child > li:last-child > :is(ul, ol, pre) ~ :after,
.result-streaming > ol:last-child > li:last-child > pre:last-child code:after,
.result-streaming > ul:last-child > li:last-child > pre:last-child code:after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 0.35rem;
  vertical-align: middle;
  font-size: 0;
  line-height: 0;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20120%20120%22%3E%3Cpath%20fill=%22%23FF6B00%22%20fill-rule=%22evenodd%22%20clip-rule=%22evenodd%22%20d=%22M60.007%20119.885C92.8914%20119.885%20119.507%2093.2326%20119.507%2060.3848H119.544C119.544%2027.537%2092.9281%200.884766%2060.0436%200.884766C27.1591%200.884766%200.54361%2027.537%200.54361%2060.3848C0.54361%2093.2326%2027.1225%20119.885%2060.007%20119.885ZM81.4902%2022.478L72.6183%2049.9001L72.5817%2049.9368L99.1606%2041.3215C107.079%2057.5621%20104.293%2077.7254%2090.802%2091.2165C73.7915%20108.227%2046.1861%20108.227%2029.1756%2091.2165C12.1652%2074.206%2012.1652%2046.6007%2029.1756%2029.5902C43.3633%2015.4026%2064.8463%2013.0563%2081.4902%2022.478Z%22/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border-radius: 0;
  animation: beo-busy-spin 1.1s linear infinite;
  will-change: transform;
}
.submitting .result-thinking:empty:last-child:after {
  position: absolute;
  top: -14px;
  width: 18px;
  height: 18px;
  margin-left: 0;
}
@keyframes beo-busy-spin {
  to { transform: rotate(360deg); }
}
@keyframes beo-busy-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.55; transform: scale(0.88); }
}
@media (prefers-reduced-motion: reduce) {
  .submitting .result-thinking:empty:last-child:after,
  .result-streaming > :not(ol):not(ul):not(pre):last-child:after,
  .result-streaming > pre:last-child code:after,
  .result-streaming > :is(ul, ol):last-child > li:last-child:not(:has(> :is(ul, ol, pre))):after,
  .result-streaming > ol:last-child > li:last-child:after,
  .result-streaming > ul:last-child > li:last-child:after {
    animation: beo-busy-pulse 1.4s ease-in-out infinite;
  }
}
