.welcome-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;overflow:hidden;padding:24px;background:var(--paper);animation:welcome-dismiss var(--intro-duration) ease-in-out both}.welcome-screen__content{display:grid;justify-items:center;gap:24px;text-align:center}.welcome-screen__art{position:relative;display:grid;place-items:center;width:clamp(140px,27vw,204px);max-height:48svh;aspect-ratio:420 / 536;perspective:600px}.welcome-screen__halo{position:absolute;width:160%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#13b5c624,#13b5c60b 45%,transparent 70%);animation:welcome-glow var(--intro-duration) ease-in-out both}.welcome-screen__halo:before,.welcome-screen__halo:after{content:"";position:absolute;inset:12%;border:1px solid #13b5c64d;border-radius:50%;animation:welcome-ring var(--intro-duration) ease-out both}.welcome-screen__halo:after{inset:3%;border-color:#13b5c62b;animation-name:welcome-outer-ring}.welcome-screen__logo{position:relative;display:block;width:100%;height:100%;overflow:hidden;filter:drop-shadow(0 10px 16px #13b5c61c);transform-origin:center;animation:welcome-logo var(--intro-duration) cubic-bezier(.2,.7,.25,1) both}.welcome-screen__message{color:var(--secondary);font-size:clamp(17px,4.5vw,24px);font-weight:700;line-height:1.8;animation:welcome-message var(--intro-duration) ease-out both}.welcome-screen__dots{display:flex;gap:7px;direction:ltr}.welcome-screen__dots>span{display:block;width:5px;height:5px;border-radius:50%;background:var(--primary);animation:welcome-dot .75s ease-in-out infinite}.welcome-screen__dots>span:nth-child(2){animation-delay:.12s}.welcome-screen__dots>span:nth-child(3){animation-delay:.24s}@keyframes welcome-logo{0%{opacity:0;transform:scale(.7) rotateY(-55deg) rotate(-8deg);clip-path:circle(0% at 50% 50%)}38%{opacity:1;transform:scale(1.04) rotateY(0) rotate(0);clip-path:circle(75% at 50% 50%)}60%{opacity:1;transform:translateY(0) scale(1);clip-path:circle(75% at 50% 50%)}to{opacity:1;transform:translateY(-4px) scale(1);clip-path:circle(75% at 50% 50%)}}@keyframes welcome-glow{0%{opacity:0;transform:scale(.65)}45%,to{opacity:1;transform:scale(1)}}@keyframes welcome-message{0%,28%{opacity:0;transform:translateY(10px)}52%,to{opacity:1;transform:translateY(0)}}@keyframes welcome-ring{0%,10%{opacity:0;transform:scale(.55)}45%{opacity:1}to{opacity:0;transform:scale(1.15)}}@keyframes welcome-outer-ring{0%,20%{opacity:0;transform:scale(.6)}55%{opacity:1}to{opacity:0;transform:scale(1.12)}}@keyframes welcome-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@keyframes welcome-dismiss{0%,85%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.welcome-screen,.welcome-screen__logo,.welcome-screen__halo,.welcome-screen__halo:before,.welcome-screen__halo:after,.welcome-screen__message,.welcome-screen__dots>span{animation:none}}
