/*!
 * Backport of Bootstrap's spinner component for Bootstrap 4.0.0.
 *
 * PCT-4942. This app ships Bootstrap v4.0.0 (Shared/Bootstrap/bootstrap.css); the spinner
 * component was not added until 4.2. Markup written against the documented API therefore
 * resolved to nothing here and rendered an invisible, zero-size element - which is exactly
 * how this file came to exist.
 *
 * Transcribed from twbs/bootstrap v4.6.2 scss/_spinners.scss, with the variables resolved
 * from scss/_variables.scss:
 *
 *     $spinner-width           2rem
 *     $spinner-height          $spinner-width
 *     $spinner-vertical-align  -.125em
 *     $spinner-border-width    .25em
 *     $spinner-width-sm        1rem
 *     $spinner-height-sm       $spinner-width-sm
 *     $spinner-border-width-sm .2em
 *
 * Deliberately a faithful copy, using Bootstrap's own class names and values so that
 * consuming markup is ordinary Bootstrap markup. DO NOT add local tweaks here - spacing and
 * positioning belong at the call site (the spacing utilities such as .mr-1 already exist in
 * 4.0.0). Anything added here silently changes every future consumer.
 *
 * WHEN THIS APP UPGRADES PAST BOOTSTRAP 4.2: delete this file and remove its entry from
 * BundleConfig.cs. The real component supersedes it. Until then, note that upgrading only as
 * far as 4.1.x still needs this file - the component is not present there either.
 *
 * Kept outside Shared/CSS/Bootstrap/ on purpose: that directory holds vendor files and would
 * be replaced wholesale by a Bootstrap drop-in upgrade, which would delete this silently.
 *
 * Only the rotating spinner is backported. Upstream also defines .spinner-grow; add it here
 * from the same source if it is ever needed.
 */

@keyframes spinner-border {
    to {
        transform: rotate(360deg);
    }
}

.spinner-border {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: -.125em;
    border: .25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: .75s linear infinite spinner-border;
}

.spinner-border-sm {
    width: 1rem;
    height: 1rem;
    border-width: .2em;
}

/* Upstream slows the rotation for a reduced-motion preference rather than freezing it. */
@media (prefers-reduced-motion: reduce) {
    .spinner-border {
        animation-duration: 1.5s;
    }
}
