*{box-sizing:border-box}:root{--bg-dark:#07111f;--white:#fff;--glass:#ffffff1f;--glass-strong:#fff3;--border:#ffffff42;--blue:#0aa8ff;--blue-dark:#062962;--cyan:#19d9ff;--green:#19d978;--purple:#7756ff}body{min-height:100vh;color:var(--white);background:radial-gradient(circle at 18% 24%,#00d0ff33,#0000 34%),radial-gradient(circle at 82% 72%,#8250ff38,#0000 36%),linear-gradient(145deg,#06101f,#08192e 55%,#050b16);margin:0;font-family:Lexend,Arial,sans-serif;overflow:hidden}canvas{z-index:1;display:block;position:fixed;inset:0}#app{z-index:10;pointer-events:none;position:fixed;inset:0}.title{z-index:50;max-width:470px;color:var(--white);text-align:left;pointer-events:none;position:fixed;top:34px;left:42px}.badge{color:#fff;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(14px);background:#ffffff1f;border:1px solid #ffffff47;border-radius:999px;padding:10px 17px;font-size:13px;font-weight:800;display:inline-block;box-shadow:inset 0 1px #ffffff38,0 12px 28px #00000040}.title h1{letter-spacing:.03em;text-shadow:0 4px #00000029,0 16px 38px #0000008c;margin:16px 0 0;font-size:clamp(40px,5vw,40px);font-weight:800;line-height:1.05}.title p{opacity:.92;max-width:360px;margin:14px 0 0;font-size:15px;font-weight:600;line-height:1.45}.levels-wrap{pointer-events:none;position:fixed;inset:0}.level-card{color:#fff;pointer-events:auto;cursor:pointer;border:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 0 0,#ffffff38,#0000 38%),linear-gradient(145deg,#ffffff2b,#ffffff12);border-radius:30px;width:260px;padding:22px;transition:transform .28s,border-color .28s,box-shadow .28s,opacity .28s;position:fixed;overflow:hidden;box-shadow:0 24px 60px #0000006b,inset 0 1px #ffffff29}.level-card:before{content:"";opacity:0;background:radial-gradient(circle,#ffffff42,#0000 55%);transition:opacity .3s;position:absolute;inset:-80px}.level-card:hover{border-color:#ffffff8c;transform:translateY(-10px)scale(1.045);box-shadow:0 34px 85px #00000094,0 0 36px #0aa8ff38}.level-card:hover:before{opacity:1}.level-top{z-index:2;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.svg-icon{border-radius:24px;place-items:center;width:70px;height:70px;display:grid}.svg-icon svg{fill:#fff;width:42px;height:42px}.level-svg{width:46px;height:46px;animation:3s ease-in-out infinite floatIcon}.level-svg path{fill:none;stroke:#fff;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.level-card:hover .level-svg{transform:scale(1.14)rotate(8deg)}.status{white-space:nowrap;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}.status.open{color:#062962;background:#fffffff5}.status.lock{color:#e5e5e5;background:#ffffff24}.level-card h2{z-index:2;letter-spacing:.02em;margin:24px 0 7px;font-size:28px;font-weight:800;position:relative}.level-card p{z-index:2;opacity:.9;margin:0;font-size:15px;font-weight:600;line-height:1.45;position:relative}.level-card button{z-index:2;color:#fff;cursor:pointer;background:#ffffff2e;border:0;border-radius:18px;width:100%;margin-top:22px;padding:13px 16px;font-family:inherit;font-size:14px;font-weight:800;transition:all .25s;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f}.level-card button:hover{background:#ffffff4d;transform:translateY(-2px)}.level-card.unlocked{background:radial-gradient(circle at 0 0,#ffffff38,#0000 38%),linear-gradient(145deg,#062962,#064e75);animation:1.9s infinite pulse}.level-card.locked{opacity:.72;filter:grayscale(.28)}.level-card.locked button{cursor:not-allowed}.level-1{top:34vh;left:7vw}.level-2{top:30vh;right:7vw}.level-3{bottom:7vh;left:50%;transform:translate(-50%)}.level-3:hover{transform:translate(-50%)translateY(-10px)scale(1.045)}.kid-modal{z-index:999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;pointer-events:none;background:#030814a8;place-items:center;padding:20px;transition:all .25s;display:grid;position:fixed;inset:0}.kid-modal.show{opacity:1;pointer-events:auto}.kid-modal-box{text-align:center;color:#fff;background:radial-gradient(circle at top left, #ffffff4d, transparent 36%), linear-gradient(145deg, var(--purple), var(--blue));border:2px solid #ffffff59;border-radius:36px;width:min(430px,100%);padding:36px 28px 30px;transition:all .28s;animation:2.8s ease-in-out infinite modalFloat;position:relative;transform:scale(.84)translateY(20px);box-shadow:0 34px 95px #00000094}.kid-modal.show .kid-modal-box{transform:scale(1)translateY(0)}.kid-face{background:radial-gradient(circle at 30% 25%,#ffffff57,#0000 40%),#ffffff29;border-radius:50%;place-items:center;width:112px;height:112px;margin:0 auto 22px;animation:1.6s infinite sadBounce;display:grid;box-shadow:inset 0 0 30px #fff3,0 16px 36px #00000042}.sad-icon{width:62px;height:62px;animation:2s infinite shakeFace}.sad-icon path{fill:none;stroke:#fff;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.kid-modal-box h2{margin:0;font-size:29px;font-weight:800;line-height:1.2}.kid-modal-box p{opacity:.96;max-width:320px;margin:15px auto 0;font-size:17px;font-weight:600;line-height:1.55}.kid-modal-btn{color:#173050;cursor:pointer;background:#fff;border:0;border-radius:20px;margin-top:26px;padding:14px 22px;font-family:inherit;font-size:15px;font-weight:800;transition:all .25s;box-shadow:0 14px 30px #0000003d}.kid-modal-btn:hover{transform:translateY(-3px)scale(1.04)}.kid-modal-close{color:#fff;cursor:pointer;background:#ffffff2e;border:0;border-radius:50%;width:38px;height:38px;font-size:26px;line-height:1;transition:all .25s;position:absolute;top:15px;right:16px}.kid-modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}@keyframes pulse{0%{box-shadow:0 24px 60px #0000006b,0 0 #ffffff8c}70%{box-shadow:0 24px 60px #0000006b,0 0 0 20px #0aa8ff00}to{box-shadow:0 24px 60px #0000006b,0 0 #0aa8ff00}}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes sadBounce{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-8px)rotate(2deg)}}@keyframes shakeFace{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes modalFloat{0%,to{box-shadow:0 34px 95px #00000094}50%{box-shadow:0 44px 115px #00a8ff73}}@media (width<=850px){body{overflow-y:auto}#app{pointer-events:auto;min-height:100vh;position:relative;overflow-y:auto}.title{max-width:100%;padding:30px 22px 10px;position:relative;top:auto;left:auto}.title h1{font-size:38px}.title p{font-size:17px}.levels-wrap{gap:18px;padding:20px 20px 34px;display:grid;position:relative}.level-card,.level-1,.level-2,.level-3{width:100%;position:relative;inset:auto;transform:none}.level-card:hover,.level-3:hover{transform:scale(1.02)}.kid-modal-box{padding:32px 22px 26px}}.orbit-btn{z-index:1200;pointer-events:auto;cursor:pointer;-webkit-backdrop-filter:blur(16px);background:#ffffff1f;border:1px solid #ffffff47;border-radius:22px;place-items:center;width:44px;height:44px;padding:0;transition:all .3s;display:grid;position:fixed;bottom:28px;right:28px;box-shadow:inset 0 1px #ffffff38,0 18px 38px #00000059}.orbit-btn:hover{transform:translateY(-4px)scale(1.05)}.orbit-btn svg{width:30px;height:30px}.orbit-btn path{fill:none;stroke:#fff;stroke-width:2.3px;stroke-linecap:round;stroke-linejoin:round}.orbit-btn.paused{background:#ffffff29}.orbit-btn.paused path{fill:#fff;stroke:#fff}@media (width<=850px){.orbit-btn{width:56px;height:56px;bottom:16px;right:16px}.orbit-btn svg{width:27px;height:27px}}.travel-overlay{z-index:3000;pointer-events:none;opacity:0;transition:opacity .35s;position:fixed;inset:0}.travel-overlay.show{opacity:1}.travel-overlay:before{content:"";filter:blur(1px);animation:.55s linear infinite warpTunnel;position:absolute;inset:-40%}.travel-overlay:after{content:"";opacity:0;animation:1.4s forwards travelFlash;position:absolute;inset:0}.travel-overlay.final:after{animation-duration:.18s}body.traveling #app{opacity:0;transition:opacity .35s,transform .35s;transform:scale(.92)}body.traveling .orbit-btn,body.traveling .reset-btn{opacity:0;pointer-events:none;transition:all .35s;transform:scale(.6)}body.return-warping .orbit-btn,body.return-warping .reset-btn{opacity:0;pointer-events:none;transform:scale(.6)}html.return-warping-preload #app,html.return-warping-preload .orbit-btn,html.return-warping-preload .reset-btn{opacity:0;visibility:hidden;pointer-events:none}@keyframes warpTunnel{0%{transform:scale(.25)rotate(0)}to{transform:scale(1.7)rotate(18deg)}}@keyframes travelFlash{0%{opacity:0;transform:scale(.2)}65%{opacity:.15}to{opacity:1;transform:scale(2.2)}}.reset-btn{z-index:1200;color:#fff;-webkit-backdrop-filter:blur(14px);cursor:pointer;background:#ffffff1f;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:all .25s;display:flex;position:fixed;top:34px;right:28px}.reset-icon{opacity:.9;width:18px;height:18px;transition:transform .4s}.reset-btn:hover{transform:translateY(-2px)scale(1.05)}.reset-btn:hover .reset-icon{transform:rotate(180deg)}.reset-btn:active{transform:scale(.92)}.reset-btn:after{content:"Reset";color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#000c;border-radius:6px;padding:5px 9px;font-size:12px;transition:all .2s;position:absolute;top:50%;right:120%;transform:translateY(-50%)}.reset-btn:hover:after{opacity:1}@media (width<=850px){.reset-btn{width:40px;height:40px;top:29px;right:16px}.reset-icon{width:16px;height:16px}}@media (width<=520px){.level-card{border-radius:24px;width:100%;padding:15px}.svg-icon{width:50px;height:50px}.level-svg{width:30px;height:30px}.level-card h2{margin:16px 0 4px;font-size:21px}.level-card p{font-size:13px}.level-card button{border-radius:14px;margin-top:14px;padding:10px 12px;font-size:12px}.status{padding:6px 9px;font-size:11px}}
