@keyframes icon-ring-shake {
    0% { transform: rotate(0deg) translateX(0); }
    3% { transform: rotate(18deg) translateX(2px); }
    6% { transform: rotate(-16deg) translateX(-2px); }
    9% { transform: rotate(18deg) translateX(2px); }
    12% { transform: rotate(-16deg) translateX(-2px); }
    15% { transform: rotate(16deg) translateX(2px); }
    18% { transform: rotate(-15deg) translateX(-2px); }
    21% { transform: rotate(16deg) translateX(2px); }
    24% { transform: rotate(-14deg) translateX(-2px); }
    27% { transform: rotate(15deg) translateX(2px); }
    30% { transform: rotate(-14deg) translateX(-2px); }
    33% { transform: rotate(14deg) translateX(2px); }
    36% { transform: rotate(-13deg) translateX(-2px); }
    39% { transform: rotate(13deg) translateX(2px); }
    42% { transform: rotate(-12deg) translateX(-1px); }
    45% { transform: rotate(12deg) translateX(1px); }
    48% { transform: rotate(-11deg) translateX(-1px); }
    51% { transform: rotate(11deg) translateX(1px); }
    54% { transform: rotate(-10deg) translateX(-1px); }
    57% { transform: rotate(10deg) translateX(1px); }
    60% { transform: rotate(-9deg) translateX(-1px); }
    63% { transform: rotate(8deg) translateX(1px); }
    66% { transform: rotate(-8deg) translateX(-1px); }
    69% { transform: rotate(7deg) translateX(1px); }
    72% { transform: rotate(-6deg) translateX(-1px); }
    75% { transform: rotate(5deg) translateX(1px); }
    78% { transform: rotate(-5deg) translateX(-1px); }
    82% { transform: rotate(4deg) translateX(0); }
    86% { transform: rotate(-3deg) translateX(0); }
    90% { transform: rotate(2deg) translateX(0); }
    94% { transform: rotate(-1deg) translateX(0); }
    100% { transform: rotate(0deg) translateX(0); }
}

.icon-ring {
    display: inline-block;
    transform-origin: 50% 15%;
}

.icon-ring.is-shaking {
    animation: icon-ring-shake 1.25s linear;
}

.after-hours-note {
    font-size: 10px;
    line-height: 1.35;
}

@media (prefers-reduced-motion: reduce) {
    .icon-ring.is-shaking {
        animation: none;
    }
}
