.forst-login-bar {
  position: fixed; top: 0; left: 0; right: 0; height: 4px; overflow: hidden; z-index: 99999; display: none;
  background: rgba(110, 110, 112, .28);
}
.forst-login-bar::before {
  content: ""; position: absolute; top: 0; bottom: 0; left: -35%; width: 35%; background: #f5c518;
  animation: forst-login-slide 1s ease-in-out infinite;
}
html.forst-signing-in .forst-login-bar { display: block; }
html.forst-signing-in body { cursor: progress; }
.forst-btn-spin {
  display: inline-block; width: 14px; height: 14px; margin-right: 8px; vertical-align: -2px;
  border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%;
  animation: forst-login-turn .8s linear infinite;
}
button[data-forst-busy][disabled], input[data-forst-busy][disabled] { opacity: .85; cursor: progress; }
@keyframes forst-login-slide { 0% { left: -35%; } 100% { left: 100%; } }
@keyframes forst-login-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .forst-login-bar::before { animation: none; left: 0; width: 100%; opacity: .6; }
  .forst-btn-spin { animation: none; }
}
