.connection-status { display: block; background-color: var(--background-color); border: solid var(--notice-color) 0.1rem; border-radius: 0.5rem; padding: 0.25rem 0.5rem; position: fixed; bottom: 10%; right: 5%; z-index: 99; /*allow-discrete is a valid value here*/ /*noinspection CssInvalidPropertyValue*/ transition: opacity 1s ease-in, display 1s ease-in allow-discrete; &.fadeout { opacity: 0; display: none; } } .state { display: flex; align-items: center; } @keyframes spin { to { transform: rotate(360deg); } } .animate-spin { animation: spin 1s linear infinite; } svg { display: inline; height: 1rem; width: 1rem; border-radius: 9999px; border-width: 2px; border-color: transparent; background-color: transparent; border-right-color: white; border-top-color: white; border-style: solid; margin-right: 0.5rem; } .disconnected { cursor: pointer; } /*@starting-style is widely supported*/ /*noinspection CssInvalidAtRule*/ @starting-style { .connection-status.fadeout { opacity: 1; display: block; } }