.md-spinner {
    width: var(--size, 64px);
    height: var(--size, 64px);
    animation: md-rotate 1.4s linear infinite;
}

.md-spinner svg {
    width: 100%;
    height: 100%;
}

.md-spinner circle {
    fill: none;
    stroke: var(--color, var(--color-green-300));
    stroke-width: var(--stroke, 2px);
    stroke-linecap: round;

    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
    animation: md-dash 1.4s ease-in-out infinite;
}

/* Rotate whole SVG */
@keyframes md-rotate {
    100% {
        transform: rotate(360deg);
    }
}

/* Grow + shrink arc */
@keyframes md-dash {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 100, 200;
        stroke-dashoffset: -15;
    }
    100% {
        stroke-dasharray: 100, 200;
        stroke-dashoffset: -125;
    }
}
