html { background-color: var(--bg); color: var(--fg); } @media (prefers-color-scheme: dark) { html { --bg: rgb(17, 17, 27); --fg: rgb(224, 222, 244); } } #splash { position: fixed; z-index: 10000; top: 0; left: 0; width: 100vw; height: 100vh; cursor: wait; background-color: var(--bg); opacity: 1; transition: opacity 0.2s ease; } #splashIcon { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 64px; height: 64px; pointer-events: none; } #splashSpinner { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 28px; height: 28px; transform: translateY(110px); display: none; color: var(--accent); } #splashText { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; display: inline-block; width: 70%; height: 0; text-align: center; padding-top: 100px; font-family: sans-serif; } #splashSpinner > .spinner { position: absolute; top: 0; left: 0; width: 28px; height: 28px; fill-rule: evenodd; clip-rule: evenodd; stroke-linecap: round; stroke-linejoin: round; stroke-miterlimit: 1.5; } #splashSpinner > .spinner.bg { opacity: 0.275; } #splashSpinner > .spinner.fg { animation: splashSpinner 0.5s linear infinite; } @keyframes splashSpinner { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @media(prefers-reduced-motion) { #splashSpinner { display: block; } #splashIcon { animation: none; } } .loadButterfly { position: absolute; top: -68px; right: 32px; width: 64px; height: 64px; } .loadButterfly .loadButterflyWingLeft { position: absolute; left: 1px; --butterfly-wl-0: rgb(255, 185, 158); --butterfly-wl-1: rgb(118, 70, 255); animation-name: anim-lw; animation-duration: 3s; animation-timing-function: ease-out; animation-iteration-count: infinite; } @media (prefers-reduced-motion) { .loadButterfly .loadButterflyWingLeft { animation-play-state: paused; } } @keyframes anim-lw { 0% { transform: rotate3d(1, 1, 0, 1deg); } 10% { filter: brightness(1.05); } 25% { transform: rotate3d(1, 1, 0, 45deg); filter: brightness(1.25); } 40% { filter: brightness(1.05); } 50% { transform: rotate3d(1, 1, 0, 1deg); } 100% { transform: rotate3d(1, 1, 0, 1deg); } } .loadButterfly .loadButterflyWingRight { position: absolute; top: 1px; --butterfly-wr-0: rgb(255, 185, 158); --butterfly-wr-1: rgb(118, 70, 255); animation-name: anim-rw; animation-duration: 3s; animation-timing-function: ease-out; animation-iteration-count: infinite; } @media (prefers-reduced-motion) { .loadButterfly .loadButterflyWingRight { animation-play-state: paused; } } @keyframes anim-rw { 0% { transform: rotate3d(1, 1, 0, -1deg); } 10% { filter: brightness(0.95); } 25% { transform: rotate3d(1, 1, 0, -45deg); filter: brightness(0.8); } 40% { filter: brightness(0.95); } 50% { transform: rotate3d(1, 1, 0, -1deg); } 100% { transform: rotate3d(1, 1, 0, -1deg); } }