<div class="loading-container"> {{#if show}} <div transition:fade class="loading-mask"> <svg> <use xlink:href="#fa-spinner" /> </svg> </div> {{/if}} </div> <style> .loading-container { left: 0; right: 0; top: 0; bottom: 0; position: fixed; pointer-events: none; z-index: 100; } .loading-mask { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: var(--mask-bg); opacity: 0.6; pointer-events: auto; } svg { width: 64px; height: 64px; fill: var(--mask-svg-fill); animation: spin 2s infinite linear; } @keyframes spin { 0% { transform: rotate(0deg); } 25% { transform: rotate(90deg); } 50% { transform: rotate(180deg); } 75% { transform: rotate(270deg); } 100% { transform: rotate(360deg); } } </style> <script> import { fade } from 'svelte-transitions' export default { transitions: { fade } } </script>