:root {
    --bg: #151513;
    --bg-soft: #1c1c19;
    --paper: #eee7da;
    --gold: #b88c4a;
    --text-dark: #191816;
    --orange: #d87418;
    --blue: #1e5b8b;
    --text: #f4f1e9;
    --muted: #a6a39b;
    --line: #383731;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: Arial, Helvetica, sans-serif;
}

h1:focus,
h2:focus {
    outline: none;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

.logo-loader {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.logo-loading {
    width: clamp(130px, 25vw, 220px);
    max-width: 60vw;
    height: auto;
    animation: smooth-glow 2.5s infinite ease-in-out;
    filter: drop-shadow(0 0 18px rgba(184, 140, 74, .25));
}

@keyframes smooth-glow {
    0%, 100% {
        transform: scale(.97);
        opacity: .75;
    }

    50% {
        transform: scale(1.03);
        opacity: 1;
    }
}


#blazor-error-ui {
    display: none;
    margin: 2rem auto;
    max-width: 600px;
}

    #blazor-error-ui .error-box {
        background: #1f2933;
        color: white;
        padding: 1.5rem 2rem;
        border-radius: 10px;
        box-shadow: 0 8px 25px rgba(0,0,0,0.25);
        text-align: center;
    }

    #blazor-error-ui a {
        color: #0d6efd;
        margin: 0 .5rem;
        font-weight: 500;
    }