body fuse-splash-screen {
    position: fixed;
    z-index: 999999;
    inset: 0;
    isolation: isolate;
    display: grid;
    min-height: 100dvh;
    overflow: hidden;
    place-items: center;
    color: #dffaf4;
    background:
        radial-gradient(circle at center, rgba(18, 203, 156, 0.08), transparent 34rem),
        #061219;
    font-family: Manrope, ui-sans-serif, system-ui, sans-serif;
    pointer-events: none;
    opacity: 1;
    visibility: visible;
    transition:
        opacity 280ms cubic-bezier(0.4, 0, 0.2, 1),
        visibility 0s linear 0s;
}

body fuse-splash-screen *,
body fuse-splash-screen *::before,
body fuse-splash-screen *::after {
    box-sizing: border-box;
}

body fuse-splash-screen .bootstrap-pattern {
    position: absolute;
    inset: 0;
    opacity: 0.18;
    background-image:
        linear-gradient(rgba(18, 203, 156, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(18, 203, 156, 0.04) 1px, transparent 1px);
    background-size: 4rem 4rem;
    -webkit-mask-image: radial-gradient(circle at center, black 0, transparent 74%);
    mask-image: radial-gradient(circle at center, black 0, transparent 74%);
}

body fuse-splash-screen .bootstrap-loader {
    position: relative;
    display: grid;
    width: min(72vw, 32rem);
    aspect-ratio: 1;
    place-items: center;
}

body fuse-splash-screen .bootstrap-radar {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

body fuse-splash-screen .bootstrap-radar circle {
    fill: none;
    stroke: rgba(80, 248, 208, 0.52);
    stroke-width: 1.25;
    transform-box: fill-box;
    transform-origin: center;
    animation: bootstrap-ring-grow 2.4s ease-out infinite;
}

body fuse-splash-screen .bootstrap-radar circle:nth-child(2) {
    animation-delay: 0.8s;
}

body fuse-splash-screen .bootstrap-radar circle:nth-child(3) {
    animation-delay: 1.6s;
}

body fuse-splash-screen .bootstrap-logo-frame {
    position: relative;
    z-index: 2;
    display: grid;
    width: min(26vw, 7.5rem);
    min-width: 4.75rem;
    place-items: center;
    animation: bootstrap-logo-breathe 1.8s ease-in-out infinite;
}

body fuse-splash-screen .bootstrap-logo-frame img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 0 16px rgba(18, 203, 156, 0.28));
}

body fuse-splash-screen .bootstrap-status {
    position: absolute;
    bottom: clamp(2rem, 8vh, 4rem);
    left: 50%;
    display: flex;
    min-width: min(88vw, 18rem);
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    color: #97A2B3;
    font-size: 0.78rem;
    line-height: 1.5;
    text-align: center;
    transform: translateX(-50%);
}

body fuse-splash-screen .bootstrap-status strong {
    color: #D6FFF4;
    font-family: "Space Grotesk", Manrope, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body fuse-splash-screen .bootstrap-status span::after {
    display: inline-block;
    width: 1.05em;
    overflow: hidden;
    vertical-align: bottom;
    content: '...';
    animation: bootstrap-loading-dots 1.2s steps(4, end) infinite;
}

@keyframes bootstrap-ring-grow {
    0% {
        opacity: 0;
        transform: scale(0.58);
    }

    12% {
        opacity: 0.68;
    }

    72% {
        opacity: 0.12;
    }

    100% {
        opacity: 0;
        transform: scale(3.6);
    }
}

@keyframes bootstrap-logo-breathe {
    0%,
    100% {
        transform: scale(0.94);
    }

    50% {
        transform: scale(1.08);
    }
}

@keyframes bootstrap-loading-dots {
    0% {
        clip-path: inset(0 100% 0 0);
    }

    25% {
        clip-path: inset(0 66% 0 0);
    }

    50% {
        clip-path: inset(0 33% 0 0);
    }

    75%,
    100% {
        clip-path: inset(0 0 0 0);
    }
}

body:not(.fuse-splash-screen-hidden) {
    overflow: hidden;
}

body.fuse-splash-screen-hidden fuse-splash-screen {
    visibility: hidden;
    opacity: 0;
    transition:
        opacity 280ms cubic-bezier(0.4, 0, 0.2, 1),
        visibility 0s linear 280ms;
}

@media (max-width: 520px) {
    body fuse-splash-screen .bootstrap-loader {
        width: min(86vw, 26rem);
    }

    body fuse-splash-screen .bootstrap-logo-frame {
        width: min(34vw, 6rem);
        min-width: 4.25rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    body fuse-splash-screen .bootstrap-radar circle {
        animation-duration: 4s;
    }

    body fuse-splash-screen .bootstrap-logo-frame {
        animation-duration: 3.2s;
    }
}
