@font-face{font-family:Outfit;font-style:normal;font-weight:700;font-display:swap;src:url('./fonts/outfit-700.ttf') format('truetype')}
#loader [hidden]{display:none!important}
#loader.brand-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:auto;box-sizing:border-box;background:#232826;color:#fff8e8;font-family:Outfit,'Segoe UI',sans-serif;transition:opacity .45s ease}
.loader-brand{width:min(280px,calc(100% - 64px));padding:80px 0;text-align:center}
.loader-title{margin:0;white-space:nowrap;font-size:clamp(30px,8vw,38px);line-height:1;letter-spacing:-.035em}
.loader-subtitle{margin:10px 0 0;color:#b4b9ad;font-size:10px;letter-spacing:.23em}
.loader-nut{width:44px;height:44px;margin:44px auto 30px;color:#e8af52;animation:nut-turn 3s ease-in-out infinite}
.loader-nut svg{display:block;width:100%;height:100%}
.loader-rail{height:4px;border-radius:4px;overflow:hidden;background:#fff8e815}
.loader-rail span{display:block;width:35%;height:100%;border-radius:4px;background:#e8af52;animation:loader-scan 1.8s ease-in-out infinite}
.loader-status{display:flex;align-items:center;justify-content:center;margin-top:14px;color:#b4b9ad;font:400 12px/1.5 'Segoe UI',sans-serif}
.loader-dots{display:inline-flex;gap:3px;margin-left:4px}
.loader-dots i{width:2px;height:2px;background:currentColor;border-radius:50%;animation:loader-dot 1.5s infinite}
.loader-dots i:nth-child(2){animation-delay:.15s}.loader-dots i:nth-child(3){animation-delay:.3s}
.loader-footer{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));right:max(24px,env(safe-area-inset-right))}
.loader-logo-crop{position:relative;width:112px;aspect-ratio:848/239;overflow:hidden}
.loader-logo{position:absolute;display:block;width:127.36%;max-width:none;height:auto;left:-13.33%;top:-118%}

#loader.brand-loader.leaving{opacity:0;pointer-events:none}
#loading-error{margin:16px 0;color:#e3bba4;font:400 13px/1.5 'Segoe UI',sans-serif}
#loading-retry{min-height:44px;padding:10px 24px;border:0;border-radius:6px;background:#e8af52;color:#232826;font:700 14px Outfit,sans-serif;cursor:pointer}
#loading-retry:focus-visible{outline:2px solid white;outline-offset:5px}
.has-error .loader-rail span{animation:none;width:100%;background:#e3bba4}.has-error .loader-nut{animation:none}
@keyframes nut-turn{0%,15%{transform:rotate(0)}85%,100%{transform:rotate(120deg)}}
@keyframes loader-scan{from{transform:translateX(-105%)}to{transform:translateX(390%)}}
@keyframes loader-dot{0%,80%,100%{opacity:.25}40%{opacity:1}}
@media(max-height:450px){.loader-brand{padding:64px 0}.loader-title{font-size:30px}.loader-nut{width:30px;height:30px;margin:18px auto}.loader-logo-crop{width:96px}.loader-footer{bottom:max(16px,env(safe-area-inset-bottom));right:max(20px,env(safe-area-inset-right))}}
@media(prefers-reduced-motion:reduce){#loader.brand-loader{transition:opacity .08s}.loader-rail span,.loader-dots i,.loader-nut{animation:none}.loader-rail span{width:100%;opacity:.6}}
