html, body, #root { width: 100%; height: 100%; margin: 0; overflow: hidden; }
.boot-loading-fallback { display: grid; place-items: center; width: 100%; height: 100%; background: radial-gradient(circle at 50% 35%, #3b5b45 0%, #203b2d 42%, #14231d 100%); color: #f2ead9; font-family: system-ui, sans-serif; }
.boot-loading-fallback-card { position: relative; width: min(430px, calc(100vw - 48px)); padding: 31px 32px 29px; border: 1px solid rgba(220,174,85,.32); border-radius: 2px 18px 18px 18px; background: rgba(10,24,17,.72); box-shadow: 0 25px 80px rgba(5,14,9,.35); text-align: center; }
.boot-loading-fallback-card::before { content: ''; position: absolute; top: -1px; left: -1px; width: 116px; height: 2px; background: #dcae55; }
.boot-loading-fallback-mark { margin: 0 0 14px; color: #dcae55; font: 500 10px monospace; letter-spacing: .22em; }
.boot-loading-fallback-card h1 { margin: 0; color: #f4ddb0; font: 400 31px/1.2 Georgia, serif; }
.boot-loading-fallback-card p:last-child { margin: 14px 0 0; color: rgba(242,234,217,.68); font-size: 12px; letter-spacing: .04em; }
.boot-loading-fallback-loader { display: block; width: 18px; height: 18px; margin: 20px auto 0; border: 2px solid rgba(242,234,217,.2); border-top-color: #dcae55; border-radius: 50%; animation: boot-loading-spin 900ms linear infinite; }
@keyframes boot-loading-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .boot-loading-fallback-loader { animation: none; } }
