[data-scene="loading"]{background:#050309}
.loading-card{text-align:center;width:min(500px,90vw)}
.loading-card h1{font-size:clamp(56px,15vw,105px);margin:10px 0 30px;text-shadow:0 0 35px rgba(255,128,190,.7)}
.loading-track{height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}
.loading-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,#ff73b3,#fff)}
[data-scene="intro"]{background:#060415}
.night-sky{position:absolute;inset:0;background:linear-gradient(#090621,#1a0d31 62%,#3a1534)}
.moon{position:absolute;left:50%;top:11%;width:clamp(145px,25vw,260px);aspect-ratio:1;border-radius:50%;
 transform:translateX(-50%);background:radial-gradient(circle at 35% 30%,#fff,#fff0c7 60%,#d9c8a9);
 box-shadow:0 0 40px rgba(255,244,210,.7),0 0 120px rgba(255,180,230,.2)}
.intro-stars{position:absolute;inset:0}
.intro-star{position:absolute;border-radius:50%;background:white;animation:twinkle 1.8s ease-in-out infinite alternate}
@keyframes twinkle{from{opacity:.2;transform:scale(.6)}to{opacity:1;transform:scale(1.4)}}
.intro-content{position:relative;text-align:center;margin-top:16vh}
.intro-content h1{font-size:clamp(68px,15vw,135px);margin:8px 0;text-shadow:0 0 35px rgba(255,144,199,.6)}
.intro-subtitle{color:var(--muted);font-size:18px;max-width:600px}
.welcome-card .mini-heart{font-size:42px;color:#ff90c2}
