.level-select{min-height:100dvh;max-width:var(--app-max-width);-webkit-overflow-scrolling:touch;background:var(--bg-primary);margin:0 auto;padding:0 0 60px;position:relative;overflow-y:auto}.ls-section-bg{max-width:var(--app-max-width);opacity:.18;z-index:0;pointer-events:none;width:100%;position:fixed;top:0;bottom:0;left:50%;right:0;transform:translate(-50%)}.ls-particles{max-width:var(--app-max-width);pointer-events:none;z-index:0;width:100%;position:fixed;top:0;bottom:0;left:50%;right:0;overflow:hidden;transform:translate(-50%)}.ls-orb{background:var(--section-glow,#6366f140);filter:blur(55px);border-radius:50%;animation:ease-in-out infinite orbFloat;position:absolute}.ls-orb-0{opacity:.3;width:260px;height:260px;animation-duration:18s;animation-delay:0s;top:-8%;left:-20%}.ls-orb-1{opacity:.22;width:180px;height:180px;animation-duration:23s;animation-delay:-7s;top:35%;right:-15%}.ls-orb-2{opacity:.18;width:150px;height:150px;animation-duration:28s;animation-delay:-12s;bottom:20%;left:8%}.ls-orb-3{opacity:.2;width:130px;height:130px;animation-duration:21s;animation-delay:-4s;top:65%;right:5%}.ls-orb-4{opacity:.22;width:220px;height:220px;animation-duration:25s;animation-delay:-16s;bottom:-10%;right:-18%}@keyframes orbFloat{0%,to{transform:translateY(0)scale(1)}33%{transform:translateY(-28px)scale(1.06)}66%{transform:translateY(18px)scale(.96)}}.ls-top-bar{z-index:20;padding:12px 14px;padding-top:max(12px, env(safe-area-inset-top,12px));-webkit-backdrop-filter:blur(24px);background:#0a0a1ab8;border-bottom:1px solid #ffffff0d;align-items:center;gap:10px;display:flex;position:sticky;top:0}.ls-back-btn{width:40px;height:40px;color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .18s,transform .15s;display:flex}.ls-back-btn:active{background:#ffffff1a;transform:scale(.88)}.ls-top-badge{color:var(--section-accent,var(--text-primary));white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:7px;font-family:Outfit,sans-serif;font-size:14px;font-weight:700;display:flex;overflow:hidden}.ls-top-stars{color:#fbbf24;background:#fbbf241a;border:1px solid #fbbf2433;border-radius:20px;flex-shrink:0;padding:4px 11px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700}.ls-hero{z-index:1;text-align:center;padding:22px 16px 18px;position:relative}.ls-hero-emoji{filter:drop-shadow(0 0 26px var(--section-glow,#6366f1a6));margin-bottom:12px;font-size:58px;line-height:1;animation:3.5s ease-in-out infinite heroFloat;display:block}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.ls-hero-name{color:#d2dcf0e6;letter-spacing:-.5px;text-shadow:0 0 40px var(--section-glow,#6366f180);margin:0 0 5px;font-family:Outfit,sans-serif;font-size:30px;font-weight:900}.ls-hero-tagline{color:#8c9eb999;margin:0 0 18px;font-size:12px;font-style:italic}.ls-stats{background:#ffffff0a;border:1px solid #ffffff12;border-radius:16px;justify-content:center;align-items:center;margin-bottom:14px;padding:12px 8px;display:flex}.ls-stat-box{flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.ls-stat-num{color:var(--section-accent,var(--text-primary));font-family:Outfit,sans-serif;font-size:19px;font-weight:800;line-height:1}.ls-stat-lbl{color:#8294af8c;text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600}.ls-stat-sep{background:#ffffff17;flex-shrink:0;width:1px;height:28px}.ls-xp-track{background:#ffffff12;border-radius:4px;height:8px;position:relative;overflow:visible}.ls-xp-fill{background:linear-gradient(90deg, var(--section-accent,#6366f1), color-mix(in srgb, var(--section-accent,#6366f1) 60%, white));box-shadow:0 0 14px var(--section-glow,#6366f180);border-radius:4px;transition:width .9s cubic-bezier(.22,.61,.36,1);position:absolute;top:0;bottom:0;left:0;overflow:hidden}.ls-xp-fill:before{content:"";background:linear-gradient(90deg,#0000 30%,#ffffff47 60%,#0000);animation:2.2s ease-in-out infinite xpShimmer;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes xpShimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}.ls-xp-tip{opacity:.85;width:5px;height:14px;box-shadow:0 0 8px white, 0 0 16px var(--section-glow,#6366f199);background:#fff;border-radius:3px;position:absolute;top:50%;right:-2px;transform:translateY(-50%)}.ls-xp-tick{z-index:2;background:#ffffff2e;border-radius:1px;width:2px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%)}.ls-no-anim .level-card{animation:none!important}.levels-grid{z-index:1;grid-template-columns:repeat(2,1fr);gap:10px;padding:4px 12px 40px;display:grid;position:relative}.stage-divider{grid-column:1/-1;align-items:center;gap:8px;padding:14px 2px 4px;display:flex}.stage-line{background:#ffffff14;flex:1;height:1px}.stage-label{letter-spacing:2.5px;color:#ffffff47;white-space:nowrap;font-family:Outfit,sans-serif;font-size:9px;font-weight:800}.level-card{cursor:pointer;-webkit-tap-highlight-color:transparent;text-align:left;min-height:190px;animation:.42s cubic-bezier(.22,.61,.36,1) both cardPop;animation-delay:var(--anim-delay,0s);background:#ffffff08;border:1.5px solid #ffffff0f;border-radius:16px;flex-direction:column;align-items:stretch;gap:0;padding:14px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .18s;display:flex;position:relative;overflow:hidden}@keyframes cardPop{0%{opacity:0;transform:translateY(22px)scale(.88)}to{opacity:1;transform:translateY(0)scale(1)}}.level-card:active:not(:disabled){transform:scale(.93)translateY(1px)}.level-card.unlocked{background:var(--section-card-bg,#ffffff0a);border-color:color-mix(in srgb, var(--section-accent,#6366f1) 22%, transparent);box-shadow:0 4px 18px #00000061,inset 0 1px #ffffff12}.level-card.unlocked:before{content:"";border-radius:inherit;background:radial-gradient(ellipse at 85% 10%, var(--section-glow,#6366f138) 0%, transparent 55%);pointer-events:none;z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.level-card.unlocked:not(.completed){box-shadow:0 4px 18px #00000061, 0 0 0 1px color-mix(in srgb, var(--section-accent,#6366f1) 16%, transparent), inset 0 1px 0 #ffffff12}.level-card.completed{border-color:color-mix(in srgb, #fbbf24 38%, var(--section-accent,#6366f1) 62%);box-shadow:0 4px 22px #0000006b,0 0 20px #fbbf241a,inset 0 1px #ffffff17}.level-card.completed:before{background:radial-gradient(at 85% 10%,#fbbf2424 0%,#0000 55%)}.level-card.locked{cursor:default;box-shadow:none;background:#ffffff04;border-color:#ffffff0a}.level-card.locked .card-lv-label{color:#5058698c}.level-card.locked .card-num{color:#4b55648c;text-shadow:none}.level-card.locked .card-name{color:#46505f80}.level-card.locked .card-diff{color:#50586973!important}.level-card.locked .card-grid{color:#46505f61}.level-card.boss{grid-column:1/-1;min-height:160px}.level-card.boss.unlocked{border-color:var(--section-accent,#6366f1);box-shadow:0 0 32px var(--section-glow,#6366f161), 0 0 70px color-mix(in srgb, var(--section-glow,#6366f133) 50%, transparent), inset 0 1px 0 #ffffff1f}.level-card.timed.unlocked:after{content:"";z-index:5;background:linear-gradient(90deg,#fbbf24,#f97316);border-radius:16px 16px 0 0;height:2.5px;position:absolute;top:0;left:0;right:0}.level-card.daily.unlocked:not(.completed){border-color:#10b98166;box-shadow:0 0 18px #10b98121}.card-badges{z-index:3;align-items:center;gap:4px;display:flex;position:absolute;top:12px;right:12px}.badge-boss{font-size:16px;animation:6s ease-in-out infinite bossWiggle}@keyframes bossWiggle{0%,85%,to{transform:rotate(0)}88%{transform:rotate(-14deg)}92%{transform:rotate(14deg)}96%{transform:rotate(-7deg)}}.badge-timed{color:#fbbf24;background:#fbbf2424;border:1px solid #fbbf2447;border-radius:5px;padding:2px 5px;font-family:Outfit,sans-serif;font-size:9px;font-weight:700}.badge-daily{color:#10b981;background:#10b98124;border:1px solid #10b98147;border-radius:5px;padding:2px 5px;font-family:Outfit,sans-serif;font-size:9px;font-weight:700;animation:2.2s ease-in-out infinite dailyPulse}@keyframes dailyPulse{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 8px #10b98180}}.card-body{z-index:2;flex-direction:column;flex:1;padding-right:32px;display:flex;position:relative}.card-lv-label{letter-spacing:2.5px;color:#a0afc873;text-transform:uppercase;margin-bottom:2px;font-family:Outfit,sans-serif;font-size:9px;font-weight:700}.card-num{color:#cdd7ebe0;letter-spacing:-2px;text-shadow:0 0 30px var(--section-glow,#6366f199);margin-bottom:6px;font-family:Outfit,sans-serif;font-size:52px;font-weight:900;line-height:1}.card-name{color:#a5b4d2ad;text-transform:uppercase;letter-spacing:2px;font-family:Outfit,sans-serif;font-size:18px;font-weight:700;line-height:1}.boss-stage-name{color:var(--section-accent,#ffffff80);opacity:.75;margin-top:5px;font-family:Outfit,sans-serif;font-size:10px;font-style:italic;font-weight:500}.card-bottom{z-index:2;justify-content:space-between;align-items:flex-end;margin-top:14px;display:flex;position:relative}.card-bottom-left{flex-direction:column;gap:4px;display:flex}.card-diff{text-transform:uppercase;letter-spacing:1.2px;font-family:Outfit,sans-serif;font-size:10px;font-weight:800}.card-diff.diff-easy{color:#10b981}.card-diff.diff-medium{color:#fbbf24}.card-diff.diff-hard{color:#f97316}.card-diff.diff-expert{color:#ef4444}.card-grid{color:#8c9eb980;font-family:Outfit,sans-serif;font-size:11px;font-weight:600}.level-stars{gap:2px;display:flex}.star-filled{color:#fbbf24;filter:drop-shadow(0 0 5px #fbbf24bf)}.star-empty{color:#ffffff1f}.card-play{z-index:2;background:linear-gradient(145deg, var(--section-accent,#6366f1), color-mix(in srgb, var(--section-accent,#6366f1) 55%, #000));color:#fff;width:54px;height:54px;box-shadow:0 4px 18px color-mix(in srgb, var(--section-glow,#6366f180) 80%, transparent), inset 0 1px 0 #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding-left:4px;transition:transform .15s;display:flex;position:relative}.level-card.unlocked:not(.completed) .card-play:before,.level-card.unlocked:not(.completed) .card-play:after{content:"";border:2px solid color-mix(in srgb, var(--section-accent,#6366f1) 65%, transparent);pointer-events:none;border-radius:50%;animation:2.2s ease-out infinite playRing;position:absolute;top:-5px;bottom:-5px;left:-5px;right:-5px}.level-card.unlocked:not(.completed) .card-play:after{border-width:1.5px;animation-delay:.6s;top:-11px;bottom:-11px;left:-11px;right:-11px}@keyframes playRing{0%{opacity:.75;transform:scale(.78)}to{opacity:0;transform:scale(1.55)}}.card-lock-btn{z-index:2;color:#ffffff4d;background:#ffffff0f;border:1.5px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;display:flex;position:relative}.card-play-boss{width:52px;height:52px;padding-left:4px}.level-card:active:not(:disabled) .card-play{transform:scale(.88)}.level-card.completed .card-play{box-shadow:none;opacity:.45;background:#ffffff17}.level-card.completed .card-play:before,.level-card.completed .card-play:after{display:none}.card-boss-aura{background:radial-gradient(ellipse at 50% 60%, var(--section-glow,#6366f173) 0%, transparent 65%);opacity:.45;pointer-events:none;z-index:0;animation:3s ease-in-out infinite bossAura;position:absolute;top:0;bottom:0;left:0;right:0}@keyframes bossAura{0%,to{opacity:.3}50%{opacity:.7}}.card-shimmer{border-radius:inherit;pointer-events:none;z-index:1;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.card-shimmer:after{content:"";width:36%;height:180%;animation:5.5s ease-in-out infinite shimmerPass;animation-delay:var(--anim-delay,0s);background:linear-gradient(105deg,#0000,#ffffff0d 44%,#ffffff17 50%,#ffffff0d 56%,#0000);position:absolute;top:-40%;left:-60%}@keyframes shimmerPass{0%{opacity:0;transform:translate(0)}8%{opacity:1}58%{opacity:1;transform:translate(500%)}65%{opacity:0}to{opacity:0;transform:translate(500%)}}.level-card.scroll-highlight{animation:1.5s forwards scrollPop}@keyframes scrollPop{0%{box-shadow:0 0 0 0 var(--section-glow,#6366f180)}30%{box-shadow:0 0 32px 8px var(--section-glow,#6366f18c);transform:scale(1.05)}to{box-shadow:none;transform:scale(1)}}@media (min-width:600px) and (max-width:1023px){.level-select{max-width:none}.ls-top-bar{padding:14px clamp(20px,4vw,40px)}.ls-hero{padding:24px clamp(20px,4vw,40px) 20px}.levels-grid{grid-template-columns:repeat(3,1fr);padding:4px clamp(20px,4vw,40px) 40px}}
