:root {
    --bg:      #0b0d10;
    --panel:   #14181d;
    --ink:     #eef2f4;
    --muted:   #8b97a1;
    --accent:  #4ef2c9;
    --accent-ink: #04130f;
    --danger:  #ff6b6b;
    --radius:  16px;
    color-scheme: dark;
}

* { box-sizing: border-box; }

html, body { height: 100%; }

body {
    margin: 0;
    background:
        radial-gradient(1200px 600px at 80% -10%, #16241f 0, transparent 60%),
        radial-gradient(900px 500px at -10% 110%, #102a24 0, transparent 55%),
        var(--bg);
    color: var(--ink);
    font-family: "Sora", system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.boot {
    display: flex; align-items: center; gap: .6rem;
    padding: 2.5rem; color: var(--muted);
    font-family: "Spline Sans Mono", monospace; letter-spacing: .04em;
}
.boot-dot {
    width: .6rem; height: .6rem; border-radius: 50%;
    background: var(--accent); box-shadow: 0 0 12px var(--accent);
    animation: pulse 1.1s ease-in-out infinite;
}
@keyframes pulse { 0%,100%{opacity:.35;transform:scale(.85)} 50%{opacity:1;transform:scale(1.1)} }

/* Buttons — high contrast, readable. */
.btn {
    font-family: "Sora", sans-serif;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: .01em;
    white-space: nowrap;
    padding: .8rem 1.4rem;
    border-radius: 999px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: transform .12s ease, background .15s ease, border-color .15s ease;
}
.btn:active { transform: translateY(1px) scale(.99); }
.btn-primary {
    background: var(--accent);
    color: var(--accent-ink);
    box-shadow: 0 6px 24px -8px var(--accent);
}
.btn-primary:hover { background: #6bf6d4; }
.btn-ghost {
    background: rgba(255,255,255,.04);
    color: var(--ink);
    border-color: rgba(255,255,255,.18);
}
.btn-ghost:hover { border-color: rgba(255,255,255,.4); background: rgba(255,255,255,.08); }

#blazor-error-ui {
    display: none;
    position: fixed; bottom: 0; left: 0; right: 0;
    background: #2a1416; color: var(--danger);
    padding: .8rem 1.2rem; border-top: 1px solid #5a2a2e;
    font-family: "Spline Sans Mono", monospace;
}
#blazor-error-ui .dismiss { cursor: pointer; float: right; }
