:root {
    --bs-primary: #233a66;
    --bs-primary-rgb: 35, 58, 102;
    --bs-link-color: #233a66;
    --bs-link-color-rgb: 35, 58, 102;
}

h1:focus {
    outline: none;
}

.btn-primary {
    --bs-btn-bg: #233a66;
    --bs-btn-border-color: #233a66;
    --bs-btn-hover-bg: #1c2e52;
    --bs-btn-hover-border-color: #1c2e52;
    --bs-btn-active-bg: #15233d;
    --bs-btn-active-border-color: #15233d;
    --bs-btn-disabled-bg: #233a66;
    --bs-btn-disabled-border-color: #233a66;
}

.loading-container {
    margin-top: 20vh;
}

.loading-logo {
    width: 6rem;
    height: 6rem;
    animation: loading-pulse 1.5s ease-in-out infinite;
}

@keyframes loading-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.08); opacity: 0.8; }
}

.loading-progress {
    width: 10rem;
    height: 0.4rem;
}

.loading-progress-bar {
    width: var(--blazor-load-percentage, 0%);
    transition: width 0.05s ease-in-out;
}

    .loading-progress-text:after {
        content: var(--blazor-load-percentage-text, "Loading");
    }

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0,0,0,0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
