body { margin: 0; font-size: 100%; width: 100%; } [data-loading='true'] .page-loader { pointer-events: initial; visibility: visible; opacity: 1; } .theme-dark .page-loader { --p-page-loader-background-color: #000; } .theme-light .page-loader { --p-page-loader-background-color: #fff; } .theme-light .page-loader { background-color: #fff; } .page-loader { pointer-events: none; visibility: hidden; opacity: 0; z-index: 100000; position: fixed; height: 100%; width: 100%; background-color: var(--p-page-loader-background-color); top: 0; transition: all 0.2s ease-in-out; } .page-loader img { visibility: hidden; position: absolute; max-width: 100%; bottom: 20px; left: 50%; transform: translate(-50%, -50%); } .theme-dark .page-loader .logo-dark { visibility: visible; } .theme-light .page-loader .logo-light { visibility: visible; } .page-loader .animation { position: absolute; top: 45%; left: 50%; transform: translate(-50%, -50%) translateZ(1px); width: 140px; height: 140px; } .page-loader .animation > div { box-sizing: border-box; display: block; position: absolute; width: 124px; height: 124px; margin: 10px; border: 10px solid rgb(219, 26, 90); border-radius: 50%; animation: animation 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite; border-color: rgb(219, 26, 90) transparent transparent transparent; } .page-loader .animation > div:nth-child(1) { animation-delay: -0.45s; } .page-loader .animation > div:nth-child(2) { animation-delay: -0.3s; } .page-loader .animation > div:nth-child(3) { animation-delay: -0.15s; } @keyframes animation { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }