*{box-sizing:border-box}
:root{color-scheme:dark;--cyan:#35e9ff;--blue:#087dff;--violet:#a45cff;--white:#fff}
html,body{width:100%;min-height:100%;margin:0}
body{font-family:Inter,ui-rounded,"Arial Rounded MT Bold",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#071b88;color:#fff;overflow:hidden}
.splash{position:relative;isolation:isolate;width:100%;min-height:100svh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(12px,3vh,34px) 16px max(22px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 37%,#075bff 0%,#1234d4 31%,#101c9b 63%,#07145e 100%)}
.splash:before{content:"";position:absolute;inset:-20%;z-index:-2;background:radial-gradient(circle at 22% 23%,#128bff66 0 1px,transparent 3px),radial-gradient(circle at 76% 39%,#41eaff55 0 2px,transparent 5px),radial-gradient(circle at 32% 70%,#a34dff44 0 2px,transparent 5px);background-size:130px 140px,180px 160px,220px 190px;animation:starDrift 18s linear infinite}
.splash:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 20%,#ffffff08 42%,transparent 58%);animation:lightSweep 7s ease-in-out infinite}
.ambient{position:absolute;border-radius:50%;filter:blur(50px);opacity:.45;pointer-events:none;z-index:-1}
.ambient-one{width:34vw;height:34vw;min-width:220px;min-height:220px;top:8%;left:-10%;background:#006eff}
.ambient-two{width:32vw;height:32vw;min-width:200px;min-height:200px;right:-8%;bottom:12%;background:#4a2cff}
.hero{position:relative;width:min(92vw,660px);height:min(69vh,780px);min-height:420px;max-height:780px;flex:none}
.orbit{position:absolute;left:50%;top:52%;width:94%;height:53%;border:3px solid transparent;border-radius:50%;transform:translate(-50%,-50%) rotate(-13deg);pointer-events:none}
.orbit-back{border-top-color:#2deaffd9;border-left-color:#3388ffb5;box-shadow:0 -4px 17px #25eaff55;animation:orbitSpin 14s linear infinite}
.orbit-front{width:86%;height:47%;border-bottom-color:#7b5bffdd;border-right-color:#2deaffb8;filter:drop-shadow(0 0 8px #13dfff);transform:translate(-50%,-50%) rotate(15deg);animation:orbitSpin 18s linear infinite reverse}
.brand-panel{position:absolute;left:50%;top:53%;width:77%;height:39%;min-height:185px;transform:translate(-50%,-50%) rotate(-2deg);border:3px solid #68eaff;border-radius:29% 25% 27% 24% / 25% 27% 24% 30%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at 34% 10%,#22caff 0%,#0788ff 40%,#0753df 76%,#1435c9 100%);box-shadow:inset 0 0 22px #a7f7ff66,0 0 28px #00caff6b,0 15px 32px #001a7b80;z-index:2}
.brand-panel:before{content:"";position:absolute;inset:8px;border:1px solid #ffffff35;border-radius:inherit;pointer-events:none}
.brand-glow{position:absolute;inset:-16px;border-radius:inherit;z-index:-1;background:#009dff25;filter:blur(18px)}
.brand-name{font-weight:1000;font-size:clamp(3rem,10vw,5.8rem);line-height:.95;letter-spacing:-.065em;text-shadow:0 4px 0 #0648bb,0 7px 12px #00216b88;transform:rotate(2deg)}
.tagline{margin-top:12px;font-size:clamp(.95rem,2.8vw,1.55rem);line-height:1.22;font-weight:850;text-shadow:0 2px 5px #003fbd;transform:rotate(2deg)}
.tagline strong{font-weight:950}
.chat-medallion{position:absolute;right:-3%;top:-19%;width:25%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ffdc20,#ff9a00 57%,#f45b00);border:5px solid #fff;box-shadow:0 5px 0 #b84400,0 0 22px #ffad00aa;transform:rotate(8deg);animation:medallionBob 3.2s ease-in-out infinite}
.chat-bubble{width:66%;height:48%;border-radius:45%;background:#fff;position:relative;display:flex;align-items:center;justify-content:center;gap:5px;box-shadow:0 3px 4px #9d4b0080}
.chat-bubble:after{content:"";position:absolute;bottom:-7px;left:18%;width:19px;height:17px;background:#fff;clip-path:polygon(0 0,100% 0,0 100%)}
.chat-bubble i{width:7px;height:7px;border-radius:50%;background:#ff7b00}
.mascot{position:absolute;width:34%;z-index:3;transform-origin:50% 85%;filter:drop-shadow(0 12px 10px #00156c55);will-change:transform}
.mascot img{display:block;width:100%;height:auto;overflow:visible}
.mascot-white{width:38%;left:31%;top:0%;z-index:4;animation:whiteHop 3.5s ease-in-out infinite}
.mascot-pink{width:36%;left:0%;bottom:6%;animation:pinkHop 3.1s ease-in-out infinite;animation-delay:-.8s}
.mascot-green{width:37%;right:0%;bottom:5%;animation:greenHop 3.4s ease-in-out infinite;animation-delay:-1.4s}
.mascot-white img{animation:whiteTilt 4.8s ease-in-out infinite}
.mascot-pink img{animation:pinkTilt 4.2s ease-in-out infinite}
.mascot-green img{animation:greenTilt 4.5s ease-in-out infinite}
.motion-lines{position:absolute;left:-12%;top:36%;width:20%;height:25%;border-left:3px solid #32edff;border-radius:50%;opacity:0;animation:motionBlink 3.1s ease-in-out infinite}
.mascot-green .motion-lines{left:auto;right:-10%;animation-delay:-1s}
.mascot-white .motion-lines{left:auto;right:-8%;top:55%;animation-delay:-.4s}
.float-item{position:absolute;z-index:1;filter:drop-shadow(0 0 12px #5eeaff80);font-size:clamp(1.8rem,6vw,3.5rem);animation:floatAround 4s ease-in-out infinite}
.gift{left:3%;top:28%;transform:rotate(-16deg);animation-delay:-1.3s}
.gamepad{right:3%;top:22%;transform:rotate(16deg);animation-delay:-2s}
.coin{font-size:clamp(1.6rem,5vw,2.8rem)}
.coin-one{left:43%;bottom:4%;animation-delay:-.7s}
.coin-two{right:18%;bottom:23%;animation-delay:-2.4s}
.sparkles{position:absolute;inset:0;pointer-events:none}
.spark{position:absolute;color:#ffe34d;font-size:clamp(1.1rem,3.5vw,2rem);text-shadow:0 0 12px #ffb700;animation:sparkle 2s ease-in-out infinite}
.spark-a{left:8%;top:49%}.spark-b{right:8%;top:47%;animation-delay:-.7s}.spark-c{left:30%;top:37%;animation-delay:-1.2s}.spark-d{right:25%;top:67%;animation-delay:-.3s}.spark-e{left:18%;bottom:22%;animation-delay:-1.5s}.spark-f{right:17%;bottom:35%;animation-delay:-.9s}
.loading{width:min(78vw,360px);text-align:center;margin-top:clamp(2px,1.5vh,18px);z-index:5}
.loading-dots{display:flex;justify-content:center;gap:9px;margin-bottom:17px}
.loading-dots span{width:11px;height:11px;border-radius:50%;background:#2d5cff;box-shadow:0 0 8px #285fff55;animation:dotPulse 1.1s ease-in-out infinite}
.loading-dots span:first-child{background:#39edff;box-shadow:0 0 14px #39edff;animation-delay:0s}
.loading-dots span:nth-child(2){animation-delay:.15s}.loading-dots span:nth-child(3){animation-delay:.3s}.loading-dots span:nth-child(4){animation-delay:.45s}
.loading-label{font-size:clamp(1rem,3.5vw,1.35rem);font-weight:850;text-shadow:0 2px 8px #00145d;margin-bottom:17px}
.progress-track{height:17px;border-radius:99px;border:2px solid #3c61ff;background:#0a2c9eaa;box-shadow:inset 0 2px 7px #00176e88,0 0 15px #1769ff44;overflow:hidden;padding:2px}
.progress-fill{height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#20e7ff,#6cbaff 53%,#b64cff);box-shadow:0 0 12px #51eaff;transition:width .18s linear}
.skip-button{margin-top:15px;border:0;background:transparent;color:#cfeaff;font:700 .9rem inherit;cursor:pointer;opacity:.82;padding:7px 12px}
.skip-button:hover{opacity:1;color:#fff}
.skip-button span{font-size:1.25em;margin-left:4px}
.footer-note{position:absolute;bottom:max(7px,env(safe-area-inset-bottom));font-size:9px;letter-spacing:.25em;font-weight:800;color:#8fc8ff66}
@keyframes whiteHop{0%,100%{transform:translateY(0) rotate(-3deg)}45%{transform:translateY(-15px) rotate(3deg)}60%{transform:translateY(-10px) rotate(1deg)}}
@keyframes pinkHop{0%,100%{transform:translateY(0) rotate(-5deg)}42%{transform:translateY(-12px) rotate(2deg)}58%{transform:translateY(-5px) rotate(4deg)}}
@keyframes greenHop{0%,100%{transform:translateY(0) rotate(5deg)}40%{transform:translateY(-14px) rotate(-3deg)}58%{transform:translateY(-6px) rotate(-5deg)}}
@keyframes whiteTilt{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}
@keyframes pinkTilt{0%,100%{transform:rotate(2deg)}50%{transform:rotate(-4deg)}}
@keyframes greenTilt{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(4deg)}}
@keyframes medallionBob{0%,100%{translate:0 0;rotate:7deg}50%{translate:0 -7px;rotate:12deg}}
@keyframes floatAround{0%,100%{translate:0 0;rotate:-7deg}50%{translate:0 -12px;rotate:8deg}}
@keyframes sparkle{0%,100%{transform:scale(.72) rotate(0);opacity:.55}50%{transform:scale(1.18) rotate(18deg);opacity:1}}
@keyframes dotPulse{0%,80%,100%{transform:scale(.82);opacity:.55}40%{transform:scale(1.2);opacity:1}}
@keyframes motionBlink{0%,65%,100%{opacity:0;transform:scaleY(.5)}72%,82%{opacity:.9;transform:scaleY(1)}}
@keyframes orbitSpin{to{rotate:360deg}}
@keyframes starDrift{to{background-position:130px 140px,180px 160px,220px 190px}}
@keyframes lightSweep{0%,100%{opacity:.25;transform:translateX(-15%)}50%{opacity:.75;transform:translateX(15%)}}
@media(min-width:700px){.hero{height:min(70vh,790px);width:min(82vw,650px)}.loading{margin-top:0}.mascot-white{top:1%}.brand-panel{top:53%}}
@media(max-height:700px){.splash{padding-top:8px}.hero{height:66svh;min-height:330px;max-height:500px;width:min(90vw,500px)}.brand-panel{min-height:145px}.brand-name{font-size:clamp(2.6rem,8vw,4.2rem)}.tagline{margin-top:7px}.loading{margin-top:0}.loading-dots{margin-bottom:8px}.loading-label{margin-bottom:9px}.progress-track{height:13px}.skip-button{margin-top:5px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}
