/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

/* Async-Buttons: Spinner statt Icon, solange die Turbo-Anfrage läuft
   (Stimulus busy-button setzt .is-busy auf dem Formular). */
@keyframes monithor-spin {
  to { transform: rotate(360deg); }
}
form.is-busy button svg { display: none; }
form.is-busy button::after {
  content: "";
  display: inline-block;
  width: 0.9rem;
  height: 0.9rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 9999px;
  animation: monithor-spin 0.6s linear infinite;
}
form.is-busy button { pointer-events: none; opacity: 0.7; }

/* Turbo-Frames waehrend des Ladens abdimmen (z.B. Datei-Browser-Navigation) */
turbo-frame[busy] { opacity: 0.55; transition: opacity 0.15s; }
