*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#071b35;color:#fff;font-family:ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif}
#unity-canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}
#loading{position:fixed;inset:0;display:grid;place-items:center;overflow:auto;isolation:isolate;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));text-align:center;background:radial-gradient(ellipse at 50% 43%,#226aab 0%,#123e6a 40%,#071b35 78%)}
#loading[hidden],[hidden]{display:none!important}
body.cc-host-paused #loading *,body.cc-host-paused #loading *::before{animation-play-state:paused!important;transition:none!important}
.loading-rays{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.loading-rays::before{content:"";position:absolute;width:180vmax;height:180vmax;left:50%;top:43%;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 8deg,transparent 0deg 23deg,#7acaff12 24deg 35deg,transparent 36deg 45deg);animation:rays 75s linear infinite}
.loading-marks{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}
.loading-marks i{position:absolute;width:70px;height:70px;background:#88d5ff;mask:url("loading-leon.png") center/contain no-repeat;-webkit-mask:url("loading-leon.png") center/contain no-repeat;opacity:.055;animation:drift 8s ease-in-out infinite}
.loading-marks i:nth-child(1){left:12%;top:15%;transform:rotate(-18deg)}
.loading-marks i:nth-child(2){right:14%;top:24%;width:48px;height:48px;animation-delay:-3s}
.loading-marks i:nth-child(3){left:23%;bottom:16%;width:50px;height:50px;animation-delay:-5s}
.loading-marks i:nth-child(4){right:8%;bottom:13%;transform:rotate(16deg);animation-delay:-2s}
.loading-card{width:min(100%,480px);position:relative;padding:12px 0}
.loading-emblem{position:relative;display:grid;place-items:center;width:280px;height:280px;max-width:100%;margin:0 auto 44px}
.loading-emblem::before{content:"";position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,#74dfff35,transparent 68%);animation:glow 4s ease-in-out infinite}
.loading-emblem img{display:block;width:230px;max-width:86%;height:auto;filter:drop-shadow(0 15px 12px #00102766);animation:float 4s ease-in-out infinite}
.sparkle{position:absolute;width:15px;height:15px;background:#b7faff;clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);animation:twinkle 3.8s ease-in-out infinite;filter:drop-shadow(0 0 6px #8ff5ff)}
.sparkle:nth-of-type(1){left:5%;top:31%;width:20px;height:20px}
.sparkle:nth-of-type(2){right:7%;top:13%;animation-delay:-1.5s}
.sparkle:nth-of-type(3){right:3%;bottom:17%;width:10px;height:10px;animation-delay:-2.4s}
.loading-status{font-size:clamp(17px,3.9vw,21px);font-weight:800;line-height:1.4;margin:0 0 18px;min-height:30px;text-shadow:0 2px 3px #00132b80}
.loading-track{position:relative;width:100%;height:30px;filter:drop-shadow(0 5px 0 #00152d);margin:auto}
progress{display:block;appearance:none;-webkit-appearance:none;width:100%;height:30px;border:3px solid #c2f4ff;border-radius:18px;overflow:hidden;background:#08233d;color:#31eadc;box-shadow:0 0 18px #52d5ed20}
progress::-webkit-progress-bar{background:linear-gradient(#071b30,#153e5c)}
progress::-webkit-progress-value{border-radius:12px;background:linear-gradient(180deg,#c4ffff 0%,#5ffff0 24%,#1cdad6 49%,#10aac7 51%,#23d7e0 100%);box-shadow:inset 0 -2px 0 #0b8fa9;transition:width .18s ease-out}
progress::-moz-progress-bar{border-radius:12px;background:linear-gradient(180deg,#c4ffff,#5ffff0 24%,#1cdad6 49%,#10aac7 51%,#23d7e0);transition:width .18s ease-out}
.loading-tip{margin:25px auto 0;max-width:360px;color:#c1deef;font-size:14px;line-height:1.65;font-weight:500;text-wrap:balance}
.loading-tip strong{display:block;color:#fff0a8;font-weight:800;font-size:12px;letter-spacing:1.6px;margin-bottom:5px}
#retry{margin:20px auto 0;padding:13px 24px;min-height:48px;border:2px solid #d8ffff;border-radius:18px;background:linear-gradient(#80fff1,#25cdd8);box-shadow:0 5px 0 #002341;color:#052940;font-family:inherit;font-size:16px;font-weight:800;cursor:pointer}
#retry:focus-visible{outline:3px solid #ffe790;outline-offset:5px}#retry:hover{filter:brightness(1.1)}#retry:active{transform:translateY(2px);box-shadow:0 3px 0 #002341}
@keyframes rays{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes float{50%{transform:translateY(-9px) rotate(1deg)}}
@keyframes drift{50%{translate:0 -16px}}
@keyframes glow{50%{opacity:.55;transform:scale(1.12)}}
@keyframes twinkle{0%,100%{opacity:.25;transform:scale(.65) rotate(0)}50%{opacity:.95;transform:scale(1) rotate(12deg)}}
@media(max-width:480px){.loading-emblem{margin-bottom:32px;width:245px;height:245px}.loading-emblem img{width:210px}.loading-tip{font-size:13px}.loading-marks i:nth-child(1){left:3%;top:12%}}
@media(max-height:560px){#loading{padding:18px 24px}.loading-emblem{width:155px;height:155px;margin-bottom:12px}.loading-emblem img{width:140px}.loading-status{font-size:17px;margin-bottom:12px;min-height:24px}.loading-tip{margin-top:18px;font-size:12px}.loading-tip strong{display:none}}
@media(prefers-reduced-motion:reduce){#loading *,#loading *::before{animation:none!important;transition:none!important}}
