/* SPK-LOGOV2 loader V3 (logo v2) */
.lv3{display:block;width:clamp(150px,44vw,210px);height:auto;overflow:visible;margin:0 auto}
.lv3 .lvw{transform-box:fill-box;transform-origin:50% 50%;animation:lvR 2.6s linear infinite}
.lv3 .lvw>g{transform-box:fill-box;transform-origin:50% 50%}
.lv3 .lvw-g{opacity:.25;animation:lvG 1.8s ease-in-out infinite}
/* full intro (login pages): wheel build-up + per-letter reveal */
.lv3-in .lvw-r{animation:lvIn 1.1s cubic-bezier(.2,.8,.2,1) both}
.lv3-in .lvw-s{animation:lvS 1.7s cubic-bezier(.16,.84,.3,1) .25s both}
.lv3-in .lvw-h{animation:lvH .45s cubic-bezier(.3,1.5,.5,1) 1.6s both}
.lv3-in .lvw-g{opacity:0;animation:lvG 1.8s ease-in-out 1.8s infinite}
.lv3-in .v3-l{opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:lvL .7s cubic-bezier(.2,.8,.2,1) calc(.95s + var(--i)*.06s) forwards}
.lv3-in .v3-g{opacity:0;animation:lvWk .7s cubic-bezier(.2,.8,.2,1) 1.95s forwards}
.lv3 .v3-ln{opacity:.22}
.lv3-in .v3-ln{opacity:0;transform-box:fill-box;transform-origin:50% 50%;transform:scaleX(0);animation:lvD .45s cubic-bezier(.2,.8,.2,1) 2.15s forwards,lvF .45s ease-out 2.6s forwards}
html.lv-noblur .lv3-in .v3-l{animation-name:lvLnb}
@keyframes lvR{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes lvIn{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}
@keyframes lvS{from{opacity:0;transform:scale(1.9) rotate(-120deg)}to{opacity:1;transform:none}}
@keyframes lvH{from{opacity:0;transform:scale(0)}to{opacity:1;transform:none}}
@keyframes lvG{0%,100%{opacity:.25}50%{opacity:.65}}
@keyframes lvL{0%{opacity:0;transform:translateY(3px);filter:blur(2px)}99%{filter:blur(0)}100%{opacity:1;transform:none;filter:none}}
@keyframes lvLnb{0%{opacity:0;transform:translateY(3px)}100%{opacity:1;transform:none}}
@keyframes lvWk{from{opacity:0;transform:translateX(var(--dx))}to{opacity:1;transform:none}}
@keyframes lvD{from{opacity:1;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes lvF{from{opacity:1}to{opacity:.22}}
@media (prefers-reduced-motion:reduce){.lv3 .lvw{animation-duration:6s}.lv3-in .lvw>g,.lv3-in .v3-l,.lv3-in .v3-g{animation:lvFade .5s ease-out .1s both!important;transform:none!important;filter:none!important}.lv3-in .v3-ln{animation:none!important;transform:none;opacity:.22}.lv3-in .lvw-g{opacity:.5}}
@keyframes lvFade{from{opacity:0}to{opacity:1}}
/* splash: white surface in every theme, static wordmark, wheel spins + hub pulses */
.spk-splash,html[data-theme="dark"] .spk-splash{background:#fff!important;color:#0B1F26!important}
.spk-splash .spl-in[data-spk-loader="3"]{display:grid;justify-items:center}
.lv3-login{width:min(190px,52vw);margin:0 auto 6px}.spk-np--v3{aspect-ratio:auto!important;width:clamp(150px,44vw,210px)!important}.spk-np--v3 .spk-np__p{display:none}#spk-splash:not(.is-out) .spk-splash__in:has(.spk-np--v3){visibility:visible;animation:lvShow .25s ease-out .3s both}@keyframes lvShow{from{opacity:0}to{opacity:1}}
