html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: 0;
    padding: 0;
    height: 100%;
    background: #0a0c14;
    color: #e6edf3;
}

body, #app, .app-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.app-shell header.site-header {
    display: none;
}

.site-main {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 0 1rem 1.5rem;
}

.sk-canvas-wrapper {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}

.sk-canvas-wrapper canvas {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.site-footer {
    text-align: center;
    font-size: 0.75rem;
    opacity: 0.6;
    padding: .75rem 0 1.25rem;
    letter-spacing: 0.08em;
}

.initial-shell { text-align:center; padding: 18vh 1rem 0; }
.initial-shell h1 { font-size: 2.5rem; color:#8bbcff; margin-bottom:1.5rem; }
.loader-bar { width:200px; height:6px; background:#1e2635; margin:0 auto; border-radius:4px; overflow:hidden; position:relative; }
.loader-bar div { position:absolute; inset:0; background:linear-gradient(90deg,#3b82f6,#9333ea); width:40%; animation:loadAnim 1.1s infinite ease-in-out; border-radius:4px; }
@keyframes loadAnim { 0% { transform:translateX(-60%);} 50% { transform:translateX(120%);} 100% { transform:translateX(120%);} }

#blazor-error-ui { background: #3b1d1d; }
#blazor-error-ui .dismiss { cursor:pointer; }

code { color: #c02d76; }

.sk-canvas-fullscreen {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    background: radial-gradient(circle at 50% 50%, #141b2a, #0a0c14 75%);
    z-index: 0;
    pointer-events: none;
}

.app-shell header.site-header,
.site-footer {
    position: relative;
    z-index: 10;
}

.site-github-link {
    width: 100%;
    text-align: center;
    margin: .25rem 0 1rem;
    opacity: .65;
    transition: opacity .2s;
    z-index: 11;
    position: relative;
}

    .site-github-link:hover {
        opacity: 1;
    }

    .site-github-link img {
        display: inline-block;
        vertical-align: middle;
    }