/* The approved stop-motion broom appears during real loading, with a still for reduced motion. */
.broom-motion { display:block; flex:none; width:64px; height:64px; }
.broom-motion img { display:block; width:100%; height:100%; object-fit:contain; }
.broom-inverse { filter:brightness(0) invert(1); }
.broom-submit-mark { display:block; flex:none; width:30px; height:30px; margin-block:-5px; }
.broom-submit-mark .broom-motion { width:100%; height:100%; }
.broom-submit-mark[hidden], .page-loading[hidden] { display:none!important; }
.page-loading {
  position:fixed; bottom:20px; left:20px; z-index:30;
  display:flex; align-items:center; gap:5px; padding:4px 18px 4px 8px;
  border:1px solid #e0e3df; border-radius:14px; background:#fffffff0;
  color:#505852; box-shadow:0 5px 22px #1117190a;
  font-size:11px; line-height:1.5; pointer-events:none;
}
.page-loading .broom-motion { width:44px; height:44px; }
#voice-widget.assistant-chat-conversation>.broom-loading-status {
  position:absolute; inset:0; z-index:1; margin:0; padding:20px;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px;
  background:#fff; color:#747b76; text-align:center; pointer-events:none;
}
#voice-widget .broom-loading-status .broom-motion { width:96px; height:96px; }
@media(max-width:760px) {
  .page-loading { bottom:max(12px, env(safe-area-inset-bottom, 0px)); left:12px; padding-right:14px; }
}
