:root {
    --starpos-blue: #5C9ECC;
    --starpos-blue-light: #8FB4D3;
    --starpos-blue-dark: #4A8BBD;
    --primary-gradient: linear-gradient(135deg, #5C9ECC 0%, #8FB4D3 100%);
    --success-gradient: linear-gradient(135deg, #5CB85C 0%, #4A9D4A 100%);
    --danger-gradient: linear-gradient(135deg, #E85D75 0%, #D14961 100%);
    --warning-gradient: linear-gradient(135deg, #F9C74F 0%, #F3A712 100%);
    --info-gradient: linear-gradient(135deg, #8FB4D3 0%, #5C9ECC 100%);
    --dark-bg: #E8EEF3;
    --card-bg: #FFFFFF;
    --card-border: #E0E7ED;
    --text-primary: #1a1a1a;
    --text-secondary: #6B7280;
    --accent-blue: #5C9ECC;
    --accent-light-blue: #8FB4D3;
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.08);
    --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.1);
    --shadow-glow: 0 0 20px rgba(92, 158, 204, 0.3);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', 'Roboto', 'Oxygen', 'Ubuntu', sans-serif;
    margin: 0;
    padding: 0;
    background: #E8EEF3;
    color: #1a1a1a;
    line-height: 1.6;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    letter-spacing: -0.5px;
    color: #1a1a1a;
}

h1 {
    font-size: 2.5rem;
    color: #1a1a1a;
    margin-bottom: 1rem;
}

h1:focus {
    outline: none;
}

a, .btn-link {
    color: #5C9ECC;
    text-decoration: none;
    transition: all 0.3s ease;
}

a:hover {
    color: #4A8BBD;
}

.content {
    padding: 2rem;
    animation: fadeIn 0.5s ease-in;
    position: relative;
    z-index: 1;
}

.page-header {
    margin-bottom: 2.5rem;
    animation: fadeIn 0.6s ease-out;
}

.page-subtitle {
    color: #6B7280;
    font-size: 1.125rem;
    margin-top: 0.5rem;
    font-weight: 400;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.valid.modified:not([type=checkbox]) {
    outline: 2px solid #00b09b;
}

.invalid {
    outline: 2px solid #f5576c;
}

.validation-message {
    color: #f5576c;
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    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;
    }

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM4NzA2IDIzNi4wMzggOTQuMTA1NiAyMzYuMTE0IDkzLjgzMTIgMjM2LjE0MyA5My42ODQxIDIzNi4xNzggOTMuNTM4NSAyMzYuMjE5IDkzLjM5NDUgMjM2LjI2NiA5My4yNTE5IDIzNi4zMiA5My4xMTE3IDIzNi4zODEgOTIuOTc0MyAyMzYuNTMgOTIuNjg4MiAyMzYuNjk3IDkyLjQwODQgMjM3LjYyNSA5MC42MzIzIDIzOS44MjIgODYuMzk5MkwyNDAuODM3IDg0LjM0OTQgMjQwLjk1NSA4NC4xMzUxIDI0MS4wOTcgODMuOTA3MSAyNDEuMzU2IDgzLjQxNDMgMjQxLjQ4MSA4My4xNjM3IDI0MS42NjMgODIuODQ1NSAyNDIuMTQ0IDgyIDI0Mi45NSA4MC44OTQ2IDI0NC4zODIgNzguNDU3NiAyNDUuOTczIDc1Ljc5MTEgMjQ3Ljk0IDcyLjYwMzkgMjUwLjM5NyA2OC4yNDc3IDI1My4xNDQgNjMuNTYxNSAyNTUuNzY0IDU5LjAwODQgMjU4LjQ2NyA1NC4xOTA4IDI2MS4zOTQgNDkuMDEyMyAyNjQuNDA4IDQzLjYyNDEgMjY3LjQzIDM4LjMzMzQgMjY4LjI1NyAzNi45Mjc5IDI2OC44MzkgMzUuOTgxOCAyNjkuMjA5IDM1LjI1ODcgMjY5LjM5NyAzNC43NTcyIDI2OS41OTEgMzQuMjk5IDI2OS43ODIgMzMuODg2NSAyNjkuOTY5IDMzLjUyMTMgMjcwLjE1NCAzMy4xOTY3IDI3MC4zMzcgMzIuOTA5IDI3MC41MTcgMzIuNjU1NyAyNzAuOTg4IDMyLjA2NDYgMjcxLjMwMyAzMS42ODU0IDI3MS42MTQgMzEuMzc0MiAyNzEuOTIgMzEuMTI5IDI3Mi4yMjcgMzAuOTQ1MiAyNzIuNTM4IDMwLjgyMTMgMjcyLjg1MiAzMC43NTU4IDI3My4xNjggMzAuNzQ3OCAyNzMuNDg1IDMwLjc5NjEgMjczLjgwNCAzMC45MDAxIDI3NC4xMjcgMzEuMDU5MyAyNzQuNDU1IDMxLjI3MzcgMjc0Ljc4NyAzMS41NDMyIDI3NS4xMjQgMzEuODY2OCAyNzUuNDY1IDMyLjI0MjUgMjc1LjgxMiAzMi42Njk0IDI3Ni4xNjQgMzMuMTQ1NCAyNzYuNTIxIDMzLjY2OTQgMjc2Ljg4MyAzNC4yMzk4IDI3Ny4yNSAzNC44NTQzIDI3Ny42MjIgMzUuNTExNCAyNzggMzYuMjA5NCAyNzguMzgxIDM2Ljk0NjggMjc4Ljc2NiAzNy43MjE2IDI3OS4xNTUgMzguNTMyMyAyNzkuNTQ3IDM5LjM3NzIgMjc5Ljk0MiA0MC4yNTQ2IDI4MC4zMzkgNDEuMTYyNyAyODAuNzM4IDQyLjEgMjgxLjE0IDQzLjA2NTcgMjgxLjU0MyA0NC4wNTc4IDI4MS45NDggNDUuMDc1IDI4Mi4zNTQgNDYuMTE1NCAyODIuNzYxIDQ3LjE3NzYgMjgzLjE2OSA0OC4yNTk0IDI4My41NzcgNDkuMzU5IDI4My45ODQgNTAuNDc1IDI4NC4zOTIgNTEuNjA2MyAyODQuNzk4IDUyLjc1MTMgMjg1LjIwNSA1My45MDg2IDI4NS42MSA1NS4wNzc1IDI4Ni4wMTUgNTYuMjU2NiAyODYuNDE4IDU3LjQ0NDQgMjg2LjgyIDU4LjY0MDcgMjg3LjIyIDU5Ljg0MzcgMjg3LjYxOCA2MS4wNTI1IDI4OC4wMTQgNjIuMjY2NCAyODguNDA3IDYzLjQ4NCAyODguNzk4IDY0LjcwNDcgMjg5LjE4NiA2NS45Mjc3IDI4OS41NzEgNjcuMTUxOCAyODkuOTUzIDY4LjM3NiAyOTAuMzMyIDY5LjU5OTQgMjkwLjcwNyA3MC44MjA5IDI5MS4wNzkgNzIuMDM5NyAyOTEuNDQ3IDczLjI1NTQgMjkxLjgxMSA3NC40NjY4IDI5Mi4xNzEgNzUuNjczIDI5Mi41MjcgNzYuODczIDI5Mi44NzkgNzguMDY2NSAyOTMuMjI3IDc5LjI1MjUgMjkzLjU3MSA4MC40MzAyIDI5My45MSA4MS41OTkgMjk0LjI0NSA4Mi43NTg0IDI5NC41NzQgODMuOTA3NSAyOTQuODk5IDg1LjA0NTQgMjk1LjIxOSA4Ni4xNzExIDI5NS41MzMgODcuMjgzNyAyOTUuODQzIDg4LjM4MjIgMjk2LjE0NyA4OS40NjYgMjk2LjQ0NSA5MC41MzQ5IDI5Ni43MzkgOTEuNTg4MiAyOTcuMDI3IDkyLjYyNSAyOTcuMzEgOTMuNjQ0OSAyOTcuNTg4IDk0LjY0NzQgMjk3Ljg2IDk1LjYzMTggMjk4LjEyNyA5Ni41OTc4IDI5OC4zODggOTcuNTQ0OSAyOTguNjQzIDk4LjQ3MjYgMjk4Ljg5MiA5OS4zODAxIDI5OS4xMzUgMTAwLjI2NiAyOTkuMzcyIDEwMS4xMyAyOTkuNjAzIDEwMS45NzEgMjk5LjgyOCAxMDIuNzg5IDMwMC4wNDcgMTAzLjU4MyAzMDAuMjU5IDEwNC4zNTIgMzAwLjQ2NSAxMDUuMDk2IDMwMC42NjUgMTA1LjgxMyAzMDAuODU5IDEwNi41MDQgMzAxLjA0NiAxMDcuMTY3IDMwMS4yMjYgMTA3LjgwMyAzMDEuNDAxIDEwOC40MTEgMzAxLjU2OSAxMDguOTkgMzAxLjczIDEwOS41NDEgMzAxLjg4NSAxMTAuMDYzIDMwMi4wMzMgMTEwLjU1NSAzMDIuMTc2IDExMS4wMTcgMzAyLjMxMiAxMTEuNDQ5IDMwMi40NDIgMTExLjg1MSAzMDIuNTY1IDExMi4yMjIgMzAyLjY4MiAxMTIuNTYyIDMwMi43OTMgMTEyLjg3MiAzMDIuODk4IDExMy4xNSAzMDIuOTk2IDExMy4zOTcgMzAzLjA4OCAxMTMuNjEzIDMwMy4xNzQgMTEzLjc5NyAzMDMuMjU0IDExMy45NSAzMDMuMzI3IDExNC4wNzIgMzAzLjM5NCAxMTQuMTYyIDMwMy40NTYgMTE0LjIyMSAzMDMuNTExIDExNC4yNDkgMzAzLjU2IDE0LjI0NiAzMDMuNjAzIDExNC4yMTEgMzAzLjY0IDExNC4xNDUgMzAzLjY3MSAxMTQuMDQ4IDMwMy42OTcgMTEzLjkyIDMwMy43MTYgMTEzLjc2MiAzMDMuNzMgMTEzLjU3MyAzMDMuNzM3IDExMy4zNTQgMzAzLjczOSAxMTMuMTA0IDMwMy43MzUgMTEyLjgyNCAzMDMuNzI1IDExMi41MTMgMzAzLjcwOSAxMTIuMTczIDMwMy42ODggMTExLjgwMiAzMDMuNjYgMTExLjQwMiAzMDMuNjI3IDExMC45NzIgMzAzLjU4OCAxMTAuNTEzIDMwMy41NDMgMTEwLjAyNSAzMDMuNDkzIDEwOS41MDggMzAzLjQzNyAxMDguOTYyIDMwMy4zNzYgMTA4LjM4NyAzMDMuMzEgMTA3Ljc4NCAzMDMuMjM4IDEwNy4xNTMgMzAzLjE2MiAxMDYuNDk1IDMwMy4wODEgMTA1LjgwOSAzMDIuOTk1IDEwNC4zNTcgMzAyLjkwNSAxMDMuNTkyIDMwMi44MSAxMDIuODAxIDMwMi42MDggMTAxLjk4NSAzMDIuNSAxMDEuMTQ1IDMwMi4zODkgMTAwLjI4MSAzMDIuMjczIDk5LjM5NDMgMzAyLjE1MyA5OC40ODUzIDMwMi4wMyA5Ny41NTQ5IDMwMS45MDMgOTYuNjA0MyAzMDEuNzcyIDk1LjYzNDMgMzAxLjYzOCA5NC42NDU5IDMwMS41IDkzLjYzOTkgMzAxLjM1OCA5Mi42MTc0IDMwMS4yMTMgOTEuNTc5MyAzMDEuMDY1IDkwLjUyNjYgMzAwLjkxNCA4OS40NjAzIDMwMC43NiA4OC4zODEzIDMwMC42MDMgODcuMjkwNiAzMDAuNDQzIDg2LjE4OTEgMzAwLjI4IDg1LjA3NzkgMzAwLjExNCA4My45NTc5IDI5OS45NDUgODIuODMwMSAyOTkuNzc0IDgxLjY5NTUgMjk5LjYgODAuNTU1IDI5OS40MjQgNzkuNDA5NiAyOTkuMjQ1IDc4LjI2MDMgMjk5LjA2MyA3Ny4xMDgyIDI5OC44NzkgNzUuOTU0MiAyOTguNjkyIDc0Ljc5OTMgMjk4LjUwMyA3My42NDQ1IDI5OC4zMTEgNzIuNDkwNyAyOTguMTE3IDcxLjMzODkgMjk3LjkyIDcwLjE5MDIgMjk3LjcyMSA2OS4wNDU1IDI5Ny41MTkgNjcuOTA1OCAyOTcuMzE1IDY2Ljc3MjEgMjk3LjEwOSA2NS42NDUzIDI5Ni45IDY0LjUyNjUgMjk2LjY4OSA2My40MTY1IDI5Ni40NzYgNjIuMzE2NCAyOTYuMjYxIDYxLjIyNzEgMjk2LjA0NCA2MC4xNDk2IDI5NS44MjUgNTkuMDg0OSAyOTUuNjA1IDU4LjAzNCAyOTUuMzgyIDU2Ljk5NzkgMjk1LjE1OCA1NS45Nzc2IDI5NC45MzMgNTQuOTczMiAyOTQuNzA1IDUzLjk4NTYgMjk0LjQ3NiA1My4wMTU5IDI5NC4yNDUgNTIuMDY0IDI5NC4wMTMgNTEuMTMxIDI5My43NzkgNTAuMjE3IDI5My41NDQgNDkuMzIzIDI5My4zMDcgNDguNDUgMjkzLjA2OSA0Ny41OTgyIDI5Mi44MjkgNDYuNzY4NCAyOTIuNTg4IDQ1Ljk2MTcgMjkyLjM0NSA0NS4xNzggMjkyLjEwMiA0NC40MTg0IDI5MS44NTcgNDMuNjgzOCAyOTEuNjExIDQyLjk3NTEgMjkxLjM2NCA0Mi4yOTI0IDI5MS4xMTYgNDEuNjM2NiAyOTAuODY3IDQxLjAwODYgMjkwLjYxNyA0MC40MDg1IDI5MC4zNjYgMzkuODM3MSAyOTAuMTE1IDM5LjI5NTUgMjg5Ljg2MyAzOC43ODQ2IDI4OS42MSAzOC4zMDQ1IDI4OS4zNTcgMzcuODU2IDI4OS4xMDMgMzcuNDM5MiAyODguODQ5IDM3LjA1NTEgMjg4LjU5NCAzNi43MDM3IDI4OC4zMzkgMzYuMzg2IDI4OC4wODQgMzYuMTAyIDI4Ny44MjkgMzUuODUyNyAyODcuNTc0IDM1LjYzODEgMjg3LjMxOSAzNS40NTgyIDI4Ny4wNjQgMzUuMzE0IDI4Ni44MDkgMzUuMjA1NSAyODYuNTU0IDM1LjEzMjggMjg2LjMgMzUuMDk2IDI4Ni4wNDYgMzUuMDk2MSAyODUuNzkzIDM1LjEzMyAyODUuNTQxIDM1LjIwNyAyODUuMjkgMzUuMzE4NyAyODUuMDQxIDM1LjQ2ODQgMjg0Ljc5NCAzNS42NTYgMjg0LjU0OSAzNS44ODI1IDI4NC4zMDYgMzYuMTQ3OCAyODQuMDY2IDM2LjQ1MiAyODMuODI5IDM2Ljc5NSAyODMuNTk1IDM3LjE3NzkgMjgzLjM2NSAzNy41OTk3IDI4My4xMzkgMzguMDYwNCAyODIuOTE3IDM4LjU2IDI4Mi42OTkgMzkuMDk4NSAyODIuNDg2IDM5LjY3NTggMjgyLjI3OCA0MC4yOTEgMjgyLjA3NSA0MC45NDMxIDI4MS44NzggNDEuNjMyIDI4MS42ODYgNDIuMzU2NyAyODEuNSA0My4xMTYxIDI4MS4zMiA0My45MDk0IDI4MS4xNDYgNDQuNzM1NCAyODAuOTc5IDQ1LjU5MzEgMjgwLjgxOSA0Ni40ODE1IDI4MC42NjYgNDcuMzk5NiAyODAuNTIgNDguMzQ2MyAyODAuMzgxIDQ5LjMyMDcgMjgwLjI1MSA1MC4zMjE3IDI4MC4xMjggNTEuMzQ4NCAyODAuMDE0IDUyLjM5OTcgMjc5LjkwOCA1My40NzQ3IDI3OS44MTEgNTQuNTcyNCAyNzkuNzIzIDU1LjY5MiAyNzkuNjQ0IDU2LjgzMjMgMjc5LjU3NSA1Ny45OTI1IDI3OS41MTYgNTkuMTcxNiAyNzkuNDY3IDYwLjM2ODcgMjc5LjQyOCA2MS41ODMgMjc5LjM5OSA2Mi44MTMzIDI3OS4zODEgNjQuMDU4OCAyNzkuMzc0IDY1LjMxNzYgMjc5LjM3OCA2Ni41ODkgMjc5LjM5MyA2Ny44NzE2IDI3OS40MiA2OS4xNjQ3IDI3OS40NTggNzAuNDY3NCAyNzkuNTA4IDcxLjc3ODkgMjc5LjU3IDczLjA5ODIgMjc5LjY0NCA3NC40MjQ0IDI3OS43MyA3NS43NTY4IDI3OS44MjggNzcuMDk0NiAyNzkuOTM5IDc4LjQzNzEgMjgwLjA2MyA3OS43ODM0IDI4MC4yIDgxLjEzMjggMjgwLjM0OSA4Mi40ODQ0IDI4MC41MTIgODMuODM3NCAyODAuNjg4IDg1LjE5MDkgMjgwLjg3NyA4Ni41NDQgMjgxLjA4IDg3Ljg5NiAyODEuMjk3IDg5LjI0NjIgMjgxLjUyOCA5MC41OTM2IDI4MS43NzMgOTEuOTM3MiAyODIuMDMyIDkzLjI3NjEgMjgyLjMwNiA5NC42MDk2IDI4Mi41OTQgOTUuOTM2OSAyODIuODk3IDk3LjI1NzMgMjgzLjIxNSA5OC41Njk2IDI4My41NDggOTkuODcyOSAyODMuODk2IDEwMS4xNjYgMjg0LjI1OSAxMDIuNDQ3IDI4NC42MzggMTAzLjcxNiAyODUuMDMyIDEwNC45NzEgMjg1LjQ0MiAxMDYuMjEyIDI4NS44NjggMTA3LjQzNyAyODYuMzEgMTA4LjY0NyAyODYuNzY5IDEwOS44MzkgMjg3LjI0NCAxMTEuMDEzIDI4Ny43MzUgMTEyLjE2OSAyODguMjQzIDExMy4zMDUgMjg4Ljc2OCAxMTQuNDIgMjg5LjMxIDExNS41MTQgMjg5Ljg2OSAxMTYuNTg2IDI5MC40NDQgMTE3LjYzNiAyOTEuMDM3IDExOC42NjMgMjkxLjY0NyAxMTkuNjY2IDI5Mi4yNzMgMTIwLjY0NSAyOTIuOTE2IDEyMS41OTkgMjkzLjU3NiAxMjIuNTI4IDI5NC4yNTMgMTIzLjQzMSAyOTQuOTQ3IDEyNC4zMDcgMjk1LjY1OCAxMjUuMTU2IDI5Ni4zODYgMTI1Ljk3NyAyOTcuMTMxIDEyNi43NjkgMjk3Ljg5MiAxMjcuNTMyIDI5OC42NzEgMTI4LjI2NSAyOTkuNDY3IDEyOC45NjcgMzAwLjI3OSAxMjkuNjM4IDMwMS4xMDggMTMwLjI3OCAzMDEuOTU1IDEzMC44ODYgMzAyLjgxOCAxMzEuNDYxIDMwMy42OTggMTMyLjAwMyAzMDQuNTk1IDEzMi41MTIgMzA1LjUwOCAxMzIuOTg3IDMwNi40MzcgMTMzLjQyOCAzMDcuMzgyIDEzMy44MzUgMzA4LjM0MyAxMzQuMjA3IDMwOS4zMTkgMTM0LjU0MyAzMTAuMzEgMTM0Ljg0NCAzMTEuMzE1IDEzNS4xMDkgMzEyLjMzNSAxMzUuMzM4IDMxMy4zNjkgMTM1LjUzIDMxNC40MTYgMTM1LjY4NiAzMTUuNDc3IDEzNS44MDUgMzE2LjU1MSAxMzUuODg3IDMxNy42MzcgMTM1LjkzMiAzMTguNzM1IDEzNS45NCAzMTkuODQ1IDEzNS45MTEgMzIwLjk2NiAxMzUuODQ0IDMyMi4wOTggMTM1Ljc0IDMyMy4yNCAxMzUuNTk5IDMyNC4zOTIgMTM1LjQyMSAzMjUuNTU0IDEzNS4yMDYgMzI2LjcyNSAxMzQuOTU0IDMyNy45MDUgMTM0LjY2NSAzMjkuMDk0IDEzNC4zMzkgMzMwLjI5IDEzMy45NzcgMzMxLjQ5NSAxMzMuNTc4IDMzMi43MDcgMTMzLjE0MyAzMzMuOTI2IDEzMi42NzEgMzM1LjE1MyAxMzIuMTYzIDMzNi4zODYgMTMxLjYxOSAzMzcuNjI1IDEzMS4wMzkgMzM4Ljg3MSAxMzAuNDIzIDM0MC4xMjIgMTI5Ljc3MSAzNDEuMzc5IDEyOS4wODQgMzQyLjY0MSAxMjguMzYxIDM0My45MDggMTI3LjYwMyAzNDUuMTc5IDEyNi44MSAzNDYuNDU0IDEyNS45ODIgMzQ3LjczMyAxMjUuMTIgMzQ5LjAxNiAxMjQuMjI0IDM1MC4zMDIgMTIzLjI5NCAzNTEuNTkxIDEyMi4zMzEgMzUyLjg4MyAxMjEuMzM0IDM1NC4xNzcgMTIwLjMwNCAzNTUuNDczIDExOS4yNDEgMzU2Ljc3MSAxMTguMTQ2IDM1OC4wNyAxMTcuMDE4IDM1OS4zNyAxMTUuODU4IDM2MC42NzEgMTE0LjY2NyAzNjEuOTcyIDExMy40NDUgMzYzLjI3NCAxMTIuMTkyIDM2NC41NzYgMTEwLjkwOSAzNjUuODc3IDEwOS41OTcgMzY3LjE3OCAxMDguMjU2IDM2OC40NzggMTA2Ljg4NyAzNjkuNzc3IDEwNS40ODkgMzcxLjA3NSAxMDQuMDY0IDM3Mi4zNzIgMTAyLjYxMSAzNzMuNjY3IDEwMS4xMzEgMzc0Ljk2MSA5OS42MjU1IDM3Ni4yNTMgOTguMDkzNSAzNzcuNTQzIDk2LjUzNjkgMzc4LjgzMSA5NC45NTU5IDM4MC4xMTcgOTMuMzUxMyAzODEuNCA5MS43MjM5IDM4Mi42OCA5MC4wNzQ0IDM4My45NTcgODguNDAzNyAzODUuMjMxIDg2LjcxMjYgMzg2LjUwMiA4NS4wMDIxIDM4Ny43NjkgODMuMjcyOSAzODkuMDMzIDgxLjUyNTggMzkwLjI5MiA3OS43NjE1IDM5MS41NDcgNzcuOTgwOSAzOTIuNzk4IDc2LjE4NDggMzk0LjA0MyA3NC4zNzQxIDM5NS4yODQgNzIuNTQ5NiAzOTYuNTE5IDcwLjcxMjEgMzk3Ljc0OCA2OC44NjI1IDM5OC45NzIgNjcuMDAxNiA0MDAuMTg5IDY1LjEzMDUgNDAxLjQgNjMuMjUgNDAyLjYwNCA2MS4zNjExIDQwMy44IDU5LjQ2NDkgNDA0Ljk4OSA1Ny41NjIiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.btn {
    padding: 0.75rem 1.75rem;
    border: none;
    border-radius: 12px;
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: var(--shadow-md);
}

.btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    filter: grayscale(1);
}

.btn-primary {
    background: var(--primary-gradient);
    color: white;
}

.btn-primary:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: var(--shadow-glow);
}

.btn-link {
    background: transparent;
    color: #5C9ECC;
    text-decoration: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.btn-link:hover {
    color: #4A8BBD;
}

.user-info {
    color: #1a1a1a;
    font-weight: 500;
    margin-right: 1rem;
}

.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}

    .loading-progress circle {
        fill: none;
        stroke: #e0e0e0;
        stroke-width: 0.6rem;
        transform-origin: 50% 50%;
        transform: rotate(-90deg);
    }

        .loading-progress circle:last-child {
            stroke: #5C9ECC;
            stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
            transition: stroke-dasharray 0.05s ease-in-out;
        }

.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}

    .loading-progress-text:after {
        content: var(--blazor-load-percentage-text, "Loading");
    }
