.sm-loading { position: relative; isolation: isolate; display: grid; place-items: center; box-sizing: border-box; min-height: 100vh; min-height: 100dvh; padding: 64px 24px 100px; overflow: hidden; background: #09090b; color: #fafafa; font: 400 14px/1.5 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; text-align: center; }
.sm-loading::before { position: absolute; z-index: -1; inset: 0; content: ''; background: radial-gradient(ellipse at 50% 43%, #ff34460b, transparent 48%), linear-gradient(#ffffff03 1px, transparent 1px), linear-gradient(90deg, #ffffff03 1px, transparent 1px); background-size: auto, 64px 64px, 64px 64px; mask-image: radial-gradient(ellipse at center, #000 12%, transparent 72%); }
.sm-loading__content { width: min(100%, 340px); }
.sm-loading__emblem { position: relative; display: grid; place-items: center; width: 145px; height: 145px; margin: 0 auto 28px; }
.sm-loading__emblem::before, .sm-loading__emblem::after { position: absolute; inset: 0; border: 1px solid #ffffff0a; border-radius: 50%; content: ''; }
.sm-loading__emblem::after { inset: 8px; border-color: #ff34460b; border-top-color: #ff3446aa; border-right-color: #ff344625; animation: sm-orbit 3s linear infinite; }
.sm-loading__symbol { display: grid; place-items: center; width: 78px; height: 64px; border: 1px solid #ff697533; border-radius: 20px; color: #fff; background: #ed2f43; box-shadow: 0 0 48px #ff344611, inset 0 1px #ffffff15; }
.sm-loading__symbol svg { width: 59px; height: 59px; }
.sm-loading .sm-loading__brand { margin: 0; color: #fafafa; font-size: clamp(32px, 7vw, 40px); font-weight: 750; letter-spacing: -.065em; line-height: 1.15; }
.sm-loading__brand span { color: #ff3446; }
.sm-loading .sm-loading__tagline { margin: 12px 0 34px; color: #81818d; font-size: 9px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; }
.sm-loading__track { width: 140px; height: 2px; margin: auto; overflow: hidden; border-radius: 4px; background: #ffffff0a; }
.sm-loading__track::after { display: block; width: 48%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ff344600, #ff3446); animation: sm-progress 1.8s ease-in-out infinite; content: ''; }
.sm-loading .sm-loading__status { margin: 18px 0 0; color: #91919d; font-size: 11px; letter-spacing: .015em; }
.sm-loading__footer { position: absolute; right: 24px; bottom: 30px; left: 24px; color: #555562; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.sm-loading__footer span { padding: 0 10px; color: #9d3d4b; }
#root > .access-shell, #root > .app-shell { animation: sm-page-reveal .28s ease-out both; }
@keyframes sm-page-reveal { from { opacity: 0; } to { opacity: 1; } }
@keyframes sm-orbit { to { transform: rotate(360deg); } }
@keyframes sm-progress { from { transform: translateX(-105%); } to { transform: translateX(215%); } }
@media (max-height: 480px) { .sm-loading { padding: 30px 20px 64px; } .sm-loading__emblem { width: 112px; height: 112px; margin-bottom: 16px; } .sm-loading__symbol { width: 65px; height: 54px; border-radius: 16px; } .sm-loading__symbol svg { width: 48px; height: 48px; } .sm-loading .sm-loading__tagline { margin-bottom: 20px; } .sm-loading__footer { bottom: 16px; } }
@media (prefers-reduced-motion: reduce) { #root > .access-shell, #root > .app-shell { animation: none; } .sm-loading__emblem::after, .sm-loading__track::after { animation: none; } .sm-loading__track::after { width: 100%; background: #ff344680; } }

.sm-loading__logo { display: grid; place-items: center; width: min(100%, 190px); margin: 0 auto 20px; overflow: visible; background: transparent; }
.sm-loading__logo img { position: static; display: block; width: 100%; height: auto; max-width: 100%; object-fit: contain; filter: drop-shadow(0 12px 15px #0005) drop-shadow(0 0 22px #ff344615); }
.sm-loading .sm-loading__tagline { margin-top: 17px; }
@media (max-height: 480px) { .sm-loading__logo { width: 100px; margin-bottom: 13px; } .sm-loading .sm-loading__brand { font-size: 29px; } .sm-loading .sm-loading__tagline { margin-top: 12px; margin-bottom: 20px; } }
