/* Shared by the HTML boot screen and Vue loaders: no blank hand-off. */
.bf-loader,.bf-loader *,.bf-loader *::before,.bf-loader *::after{box-sizing:border-box}
.bf-loader-overlay{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;overflow:hidden;background:#f5f6f8;color:#344252;isolation:isolate;font-family:Inter,Arial,sans-serif}
.bf-loader-overlay::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 50% 43%,#fff 0 12%,#fff6 35%,transparent 65%),radial-gradient(ellipse at 50% 25%,#ffc49b30,transparent 55%)}
.bf-loader-overlay::after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(#a8b1be12 1px,transparent 1px),linear-gradient(90deg,#a8b1be12 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 390px 290px at 50% 46%,#0007,transparent)}
html:has(.bf-loader-overlay){overflow-y:hidden!important}
.bf-loader{--loader-size:242px;--loader-orange:#f96520;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;min-width:0;font-family:Inter,Arial,sans-serif;color:#344252;isolation:isolate}
.bf-loader-scene{position:relative;display:grid;place-items:center;width:var(--loader-size);height:var(--loader-size);margin-bottom:25px}
.bf-loader-field{position:absolute;inset:-25%;border-radius:50%;background:radial-gradient(circle,#ffceaa42 0,transparent 63%);animation:bf-loader-aura 3.4s ease-in-out infinite}
.bf-loader-ticks{position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,#a4afbd55 0deg .7deg,transparent .7deg 15deg);mask-image:radial-gradient(closest-side,transparent 96%,#000 96% 97%,transparent 97%);opacity:.8}
.bf-loader-orbit{position:absolute;inset:15px;border:1px solid #dfe4ec;border-radius:50%}
.bf-loader-orbit::before{content:"";position:absolute;inset:-1px;padding:1.5px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg 210deg,#f9652022 250deg,#f96520 330deg,#ffb176 355deg,transparent 360deg);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}
.bf-loader-orbit--outer{animation:bf-loader-orbit 3.2s linear infinite}
.bf-loader-orbit>i{position:absolute;left:50%;top:-3px;width:5px;height:5px;border-radius:50%;background:#ff8d48;box-shadow:0 0 7px #f9652070}
.bf-loader-orbit--inner{inset:37px;border-color:#f2d7c5;animation:bf-loader-orbit 5.4s linear infinite reverse}
.bf-loader-orbit--inner::before{background:conic-gradient(transparent 0deg 230deg,#f9652050 300deg,#ffb47e 350deg,transparent 360deg);padding:1px}
.bf-loader-orbit--inner>i{width:3px;height:3px;top:-2px;background:#b3bfcd;box-shadow:none}
.bf-loader-core{position:relative;display:grid;place-items:center;width:112px;height:112px;border:1px solid #fff;border-radius:32px;background:linear-gradient(145deg,#fff 15%,#fffaf5 72%,#ffebdc);box-shadow:0 20px 40px -20px #ad673a66,0 0 0 7px #ffffff82,inset 0 -1px 0 #ead4c4;transform:rotate(-8deg);overflow:hidden;animation:bf-loader-float 3.4s ease-in-out infinite}
.bf-loader-mark{width:62px;height:62px;object-fit:contain;transform:rotate(8deg);filter:drop-shadow(0 6px 8px #e9804b28)}
.bf-loader-glint{position:absolute;inset:-70% -30%;transform:translateX(-140%) rotate(35deg);background:linear-gradient(90deg,transparent,#fff9,transparent);animation:bf-loader-glint 4s ease-in-out infinite}
.bf-loader-shadow{position:absolute;bottom:25px;left:50%;width:76px;height:9px;transform:translateX(-50%);border-radius:50%;background:#ab7a5319;filter:blur(7px)}
.bf-loader-wordmark{display:block;width:190px;height:37px;object-fit:contain;margin:0 0 29px}
.bf-loader-signal{position:relative;width:152px;height:3px;background:#e4e8ee;border-radius:10px;overflow:hidden}
.bf-loader-signal>span{position:absolute;inset:0 auto 0 0;width:45%;border-radius:inherit;background:linear-gradient(90deg,#ffbf8b,#f96520 65%,#ed6527);animation:bf-loader-signal 1.6s cubic-bezier(.55,.1,.35,1) infinite}
.bf-loader-label{margin:16px 24px 0!important;max-width:280px;color:#778393!important;font-size:12px!important;font-weight:400!important;letter-spacing:0!important;line-height:1.6!important}
.bf-route-progress{position:fixed;inset:0 0 auto;height:3px;z-index:2147483600;overflow:hidden;background:#f965201a;pointer-events:none}
.bf-route-progress>span{display:block;width:35%;height:100%;background:#f96520;animation:bf-route-progress 1.25s ease-in-out infinite}
.bf-route-progress-leave-active{transition:opacity .15s ease}
.bf-route-progress-leave-to{opacity:0}
@keyframes bf-route-progress{from{transform:translateX(-100%)}to{transform:translateX(386%)}}
.bf-loader--route{--loader-size:174px}
.bf-loader--route .bf-loader-core{width:88px;height:88px;border-radius:25px}
.bf-loader--route .bf-loader-mark{width:49px;height:49px}
.bf-loader--route .bf-loader-orbit--inner{inset:28px}
.bf-loader--route .bf-loader-wordmark{width:158px;height:31px;margin-bottom:23px}
.bf-loader--inline{--loader-size:104px;min-height:200px;padding:22px 0}
.bf-loader--inline .bf-loader-scene{margin:0 0 14px}
.bf-loader--inline .bf-loader-core{width:51px;height:51px;border-radius:15px;box-shadow:0 7px 18px -10px #ad673a66,0 0 0 4px #ffffff82}
.bf-loader--inline .bf-loader-mark{width:32px;height:32px}
.bf-loader--inline .bf-loader-orbit{inset:3px}
.bf-loader--inline .bf-loader-orbit--inner{inset:14px}
.bf-loader--inline .bf-loader-ticks,.bf-loader--inline .bf-loader-shadow{display:none}
.bf-loader--inline .bf-loader-signal{width:96px;height:2px}
.bf-loader--inline .bf-loader-label{font-size:11px!important;margin-top:11px!important}
.bf-loader-reveal-leave-active{transition:opacity .38s ease,filter .38s ease;pointer-events:none}
.bf-loader-reveal-leave-active>.bf-loader{transition:transform .38s ease}
.bf-loader-reveal-leave-to{opacity:0;filter:blur(5px)}
.bf-loader-reveal-leave-to>.bf-loader{transform:translateY(-7px) scale(1.025)}
.bf-loader-reveal-enter-active{transition:opacity .18s ease}
.bf-loader-reveal-enter-from{opacity:0}
@keyframes bf-loader-orbit{to{transform:rotate(360deg)}}
@keyframes bf-loader-float{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-5px) rotate(-5deg)}}
@keyframes bf-loader-aura{0%,100%{opacity:.5;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}
@keyframes bf-loader-glint{0%,20%{transform:translateX(-140%) rotate(35deg)}60%,100%{transform:translateX(140%) rotate(35deg)}}
@keyframes bf-loader-signal{0%{transform:translateX(-110%)}100%{transform:translateX(335%)}}
@media(max-width:539px){.bf-loader--splash{--loader-size:208px}.bf-loader--splash .bf-loader-core{width:100px;height:100px;border-radius:29px}.bf-loader--splash .bf-loader-mark{width:56px;height:56px}.bf-loader--splash .bf-loader-orbit--inner{inset:31px}.bf-loader-wordmark{width:174px;height:34px}.bf-loader-scene{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.bf-loader *,.bf-loader *::before,.bf-route-progress>span{animation:none!important}.bf-loader-signal>span,.bf-route-progress>span{width:100%;opacity:.7}.bf-loader-reveal-leave-active,.bf-loader-reveal-leave-active>.bf-loader,.bf-loader-reveal-enter-active,.bf-route-progress-leave-active{transition:none!important}}
