*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;font-family:Courier New,monospace;background:#000;color:#fff;overflow:hidden;position:fixed;width:100%;height:100%;height:100dvh;touch-action:none;-webkit-overflow-scrolling:touch}#root{width:100%;height:100%;height:100dvh;overflow:hidden}.lexi-app{width:100vw;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;background:#000;color:#fff;font-family:Courier New,monospace;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:0;box-sizing:border-box;overflow:hidden;position:fixed;top:0;left:0;margin:0;touch-action:none}.lexi-starfield{position:absolute;inset:0;pointer-events:none;z-index:0}.lexi-starfield-layer{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(1px 1px at 3% 7%,white,transparent),radial-gradient(1px 1px at 8% 12%,white,transparent),radial-gradient(1px 1px at 13% 5%,white,transparent),radial-gradient(1px 1px at 18% 18%,white,transparent),radial-gradient(1px 1px at 23% 9%,white,transparent),radial-gradient(1px 1px at 28% 15%,white,transparent),radial-gradient(1px 1px at 33% 3%,white,transparent),radial-gradient(1px 1px at 38% 11%,white,transparent),radial-gradient(1px 1px at 43% 6%,white,transparent),radial-gradient(1px 1px at 48% 16%,white,transparent),radial-gradient(1px 1px at 53% 8%,white,transparent),radial-gradient(1px 1px at 58% 14%,white,transparent),radial-gradient(1px 1px at 63% 4%,white,transparent),radial-gradient(1px 1px at 68% 10%,white,transparent),radial-gradient(1px 1px at 73% 17%,white,transparent),radial-gradient(1px 1px at 78% 7%,white,transparent),radial-gradient(1px 1px at 83% 13%,white,transparent),radial-gradient(1px 1px at 88% 5%,white,transparent),radial-gradient(1px 1px at 93% 15%,white,transparent),radial-gradient(1px 1px at 98% 9%,white,transparent),radial-gradient(1px 1px at 5% 23%,white,transparent),radial-gradient(1px 1px at 11% 28%,white,transparent),radial-gradient(1px 1px at 16% 35%,white,transparent),radial-gradient(1px 1px at 21% 31%,white,transparent),radial-gradient(1px 1px at 26% 37%,white,transparent),radial-gradient(1px 1px at 31% 24%,white,transparent),radial-gradient(1px 1px at 36% 33%,white,transparent),radial-gradient(1px 1px at 41% 29%,white,transparent),radial-gradient(1px 1px at 46% 38%,white,transparent),radial-gradient(1px 1px at 51% 25%,white,transparent),radial-gradient(1px 1px at 56% 34%,white,transparent),radial-gradient(1px 1px at 61% 30%,white,transparent),radial-gradient(1px 1px at 66% 39%,white,transparent),radial-gradient(1px 1px at 71% 26%,white,transparent),radial-gradient(1px 1px at 76% 36%,white,transparent),radial-gradient(1px 1px at 81% 32%,white,transparent),radial-gradient(1px 1px at 86% 27%,white,transparent),radial-gradient(1px 1px at 91% 35%,white,transparent),radial-gradient(1px 1px at 96% 29%,white,transparent),radial-gradient(1px 1px at 2% 44%,white,transparent),radial-gradient(1px 1px at 9% 48%,white,transparent),radial-gradient(1px 1px at 14% 42%,white,transparent),radial-gradient(1px 1px at 19% 51%,white,transparent),radial-gradient(1px 1px at 24% 45%,white,transparent),radial-gradient(1px 1px at 29% 53%,white,transparent),radial-gradient(1px 1px at 34% 47%,white,transparent),radial-gradient(1px 1px at 39% 55%,white,transparent),radial-gradient(1px 1px at 44% 49%,white,transparent),radial-gradient(1px 1px at 49% 52%,white,transparent),radial-gradient(1px 1px at 54% 46%,white,transparent);background-size:100% 100%;animation:twinkle1 3s ease-in-out infinite}.lexi-starfield-layer-2{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(1px 1px at 59% 54%,white,transparent),radial-gradient(1px 1px at 64% 48%,white,transparent),radial-gradient(1px 1px at 69% 56%,white,transparent),radial-gradient(1px 1px at 74% 50%,white,transparent),radial-gradient(1px 1px at 79% 58%,white,transparent),radial-gradient(1px 1px at 84% 52%,white,transparent),radial-gradient(1px 1px at 89% 57%,white,transparent),radial-gradient(1px 1px at 94% 51%,white,transparent),radial-gradient(1px 1px at 99% 55%,white,transparent),radial-gradient(1px 1px at 4% 63%,white,transparent),radial-gradient(1px 1px at 10% 67%,white,transparent),radial-gradient(1px 1px at 15% 61%,white,transparent),radial-gradient(1px 1px at 20% 69%,white,transparent),radial-gradient(1px 1px at 25% 64%,white,transparent),radial-gradient(1px 1px at 30% 72%,white,transparent),radial-gradient(1px 1px at 35% 66%,white,transparent),radial-gradient(1px 1px at 40% 74%,white,transparent),radial-gradient(1px 1px at 45% 68%,white,transparent),radial-gradient(1px 1px at 50% 76%,white,transparent),radial-gradient(1px 1px at 55% 70%,white,transparent),radial-gradient(1px 1px at 60% 78%,white,transparent),radial-gradient(1px 1px at 65% 72%,white,transparent),radial-gradient(1px 1px at 70% 79%,white,transparent),radial-gradient(1px 1px at 75% 73%,white,transparent),radial-gradient(1px 1px at 80% 77%,white,transparent),radial-gradient(1px 1px at 85% 71%,white,transparent),radial-gradient(1px 1px at 90% 75%,white,transparent),radial-gradient(1px 1px at 95% 69%,white,transparent),radial-gradient(1px 1px at 1% 84%,white,transparent),radial-gradient(1px 1px at 7% 88%,white,transparent),radial-gradient(1px 1px at 12% 82%,white,transparent),radial-gradient(1px 1px at 17% 90%,white,transparent),radial-gradient(1px 1px at 22% 85%,white,transparent),radial-gradient(1px 1px at 27% 93%,white,transparent),radial-gradient(1px 1px at 32% 87%,white,transparent),radial-gradient(1px 1px at 37% 95%,white,transparent),radial-gradient(1px 1px at 42% 89%,white,transparent),radial-gradient(1px 1px at 47% 96%,white,transparent),radial-gradient(1px 1px at 52% 91%,white,transparent),radial-gradient(1px 1px at 57% 97%,white,transparent),radial-gradient(1px 1px at 62% 92%,white,transparent),radial-gradient(1px 1px at 67% 86%,white,transparent),radial-gradient(1px 1px at 72% 94%,white,transparent),radial-gradient(1px 1px at 77% 88%,white,transparent),radial-gradient(1px 1px at 82% 96%,white,transparent),radial-gradient(1px 1px at 87% 90%,white,transparent),radial-gradient(1px 1px at 92% 98%,white,transparent),radial-gradient(1px 1px at 97% 92%,white,transparent),radial-gradient(2px 2px at 33% 50%,white,transparent),radial-gradient(2px 2px at 67% 25%,white,transparent);background-size:100% 100%;animation:twinkle2 4s ease-in-out infinite 1s}.lexi-starfield-layer-3{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(1px 1px at 6% 2%,white,transparent),radial-gradient(1px 1px at 12% 8%,white,transparent),radial-gradient(1px 1px at 17% 4%,white,transparent),radial-gradient(1px 1px at 22% 11%,white,transparent),radial-gradient(1px 1px at 27% 6%,white,transparent),radial-gradient(1px 1px at 32% 13%,white,transparent),radial-gradient(1px 1px at 37% 9%,white,transparent),radial-gradient(1px 1px at 42% 1%,white,transparent),radial-gradient(1px 1px at 47% 7%,white,transparent),radial-gradient(1px 1px at 52% 3%,white,transparent),radial-gradient(1px 1px at 57% 10%,white,transparent),radial-gradient(1px 1px at 62% 5%,white,transparent),radial-gradient(1px 1px at 67% 12%,white,transparent),radial-gradient(1px 1px at 72% 8%,white,transparent),radial-gradient(1px 1px at 77% 2%,white,transparent),radial-gradient(1px 1px at 82% 9%,white,transparent),radial-gradient(1px 1px at 87% 4%,white,transparent),radial-gradient(1px 1px at 92% 11%,white,transparent),radial-gradient(1px 1px at 97% 6%,white,transparent),radial-gradient(1px 1px at 3% 19%,white,transparent),radial-gradient(1px 1px at 8% 22%,white,transparent),radial-gradient(1px 1px at 13% 16%,white,transparent),radial-gradient(1px 1px at 18% 27%,white,transparent),radial-gradient(1px 1px at 23% 20%,white,transparent),radial-gradient(1px 1px at 28% 26%,white,transparent),radial-gradient(1px 1px at 33% 21%,white,transparent),radial-gradient(1px 1px at 38% 28%,white,transparent),radial-gradient(1px 1px at 43% 23%,white,transparent),radial-gradient(1px 1px at 48% 19%,white,transparent),radial-gradient(1px 1px at 53% 24%,white,transparent),radial-gradient(1px 1px at 58% 17%,white,transparent),radial-gradient(1px 1px at 63% 22%,white,transparent),radial-gradient(1px 1px at 68% 26%,white,transparent),radial-gradient(1px 1px at 73% 20%,white,transparent),radial-gradient(1px 1px at 78% 25%,white,transparent),radial-gradient(1px 1px at 83% 19%,white,transparent),radial-gradient(1px 1px at 88% 23%,white,transparent),radial-gradient(1px 1px at 93% 28%,white,transparent),radial-gradient(1px 1px at 98% 21%,white,transparent),radial-gradient(1px 1px at 5% 41%,white,transparent),radial-gradient(1px 1px at 11% 45%,white,transparent),radial-gradient(1px 1px at 16% 39%,white,transparent),radial-gradient(1px 1px at 21% 43%,white,transparent),radial-gradient(1px 1px at 26% 40%,white,transparent),radial-gradient(1px 1px at 31% 46%,white,transparent),radial-gradient(1px 1px at 36% 42%,white,transparent),radial-gradient(1px 1px at 41% 48%,white,transparent),radial-gradient(1px 1px at 46% 44%,white,transparent),radial-gradient(1px 1px at 51% 36%,white,transparent),radial-gradient(1px 1px at 56% 41%,white,transparent);background-size:100% 100%;animation:twinkle3 5s ease-in-out infinite 2s}.lexi-starfield-layer-4{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(1px 1px at 61% 37%,white,transparent),radial-gradient(1px 1px at 66% 43%,white,transparent),radial-gradient(1px 1px at 71% 38%,white,transparent),radial-gradient(1px 1px at 76% 44%,white,transparent),radial-gradient(1px 1px at 81% 40%,white,transparent),radial-gradient(1px 1px at 86% 46%,white,transparent),radial-gradient(1px 1px at 91% 42%,white,transparent),radial-gradient(1px 1px at 96% 39%,white,transparent),radial-gradient(1px 1px at 2% 59%,white,transparent),radial-gradient(1px 1px at 7% 62%,white,transparent),radial-gradient(1px 1px at 12% 56%,white,transparent),radial-gradient(1px 1px at 17% 64%,white,transparent),radial-gradient(1px 1px at 22% 58%,white,transparent),radial-gradient(1px 1px at 27% 65%,white,transparent),radial-gradient(1px 1px at 32% 60%,white,transparent),radial-gradient(1px 1px at 37% 67%,white,transparent),radial-gradient(1px 1px at 42% 62%,white,transparent),radial-gradient(1px 1px at 47% 59%,white,transparent),radial-gradient(1px 1px at 52% 63%,white,transparent),radial-gradient(1px 1px at 57% 57%,white,transparent),radial-gradient(1px 1px at 62% 65%,white,transparent),radial-gradient(1px 1px at 67% 60%,white,transparent),radial-gradient(1px 1px at 72% 66%,white,transparent),radial-gradient(1px 1px at 77% 61%,white,transparent),radial-gradient(1px 1px at 82% 68%,white,transparent),radial-gradient(1px 1px at 87% 63%,white,transparent),radial-gradient(1px 1px at 92% 58%,white,transparent),radial-gradient(1px 1px at 97% 64%,white,transparent),radial-gradient(1px 1px at 3% 81%,white,transparent),radial-gradient(1px 1px at 8% 83%,white,transparent),radial-gradient(1px 1px at 13% 79%,white,transparent),radial-gradient(1px 1px at 18% 86%,white,transparent),radial-gradient(1px 1px at 23% 81%,white,transparent),radial-gradient(1px 1px at 28% 88%,white,transparent),radial-gradient(1px 1px at 33% 83%,white,transparent),radial-gradient(1px 1px at 38% 91%,white,transparent),radial-gradient(1px 1px at 43% 85%,white,transparent),radial-gradient(1px 1px at 48% 93%,white,transparent),radial-gradient(1px 1px at 53% 87%,white,transparent),radial-gradient(1px 1px at 58% 94%,white,transparent),radial-gradient(1px 1px at 63% 89%,white,transparent),radial-gradient(1px 1px at 68% 82%,white,transparent),radial-gradient(1px 1px at 73% 90%,white,transparent),radial-gradient(1px 1px at 78% 84%,white,transparent),radial-gradient(1px 1px at 83% 92%,white,transparent),radial-gradient(1px 1px at 88% 86%,white,transparent),radial-gradient(1px 1px at 93% 95%,white,transparent),radial-gradient(1px 1px at 98% 88%,white,transparent),radial-gradient(2px 2px at 15% 45%,white,transparent),radial-gradient(2px 2px at 85% 15%,white,transparent);background-size:100% 100%;animation:twinkle4 3.5s ease-in-out infinite .5s}@keyframes twinkle1{0%,to{opacity:.2}50%{opacity:.9}}@keyframes twinkle2{0%,to{opacity:.3}50%{opacity:1}}@keyframes twinkle3{0%,to{opacity:.25}50%{opacity:.85}}@keyframes twinkle4{0%,to{opacity:.35}50%{opacity:.95}}@keyframes twinkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes planetPulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.08);opacity:.6}}@keyframes planetPulseSlow{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.06);opacity:.55}}.lexi-starfield-planet{position:absolute;width:60px;height:60px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%),repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.05) 2px,rgba(255,255,255,.05) 4px);top:10%;right:15%;opacity:.4;pointer-events:none;z-index:0;animation:planetPulse 6s ease-in-out infinite}.lexi-starfield-moon{position:absolute;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.2),transparent 70%),repeating-linear-gradient(45deg,transparent,transparent 3px,rgba(255,255,255,.08) 3px,rgba(255,255,255,.08) 6px);bottom:20%;left:12%;opacity:.5;pointer-events:none;z-index:0;animation:planetPulseSlow 7s ease-in-out infinite 1s}.lexi-starfield-planet-2{position:absolute;width:45px;height:45px;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.15),transparent 60%),repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(255,255,255,.04) 3px,rgba(255,255,255,.04) 6px);top:60%;right:8%;opacity:.35;pointer-events:none;z-index:0;animation:planetPulse 8s ease-in-out infinite 2s}.lexi-starfield-planet-3{position:absolute;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:linear-gradient(225deg,rgba(255,255,255,.12) 0%,transparent 45%),repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.06) 2px,rgba(255,255,255,.06) 4px);top:35%;left:8%;opacity:.38;pointer-events:none;z-index:0;animation:planetPulseSlow 9s ease-in-out infinite .5s}.lexi-starfield-planet-4{position:absolute;width:35px;height:35px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.18),transparent 65%),repeating-linear-gradient(135deg,transparent,transparent 2px,rgba(255,255,255,.05) 2px,rgba(255,255,255,.05) 4px);bottom:12%;right:25%;opacity:.32;pointer-events:none;z-index:0;animation:planetPulse 7s ease-in-out infinite 3s}.lexi-user-section{position:absolute;top:16px;right:16px;z-index:10}.lexi-auth-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff;padding:8px 16px;border-radius:4px;cursor:pointer;font-family:Courier New,monospace;font-size:12px;transition:all .2s}.lexi-auth-btn:hover{background:#fff3;border-color:#ffffff80}.lexi-user-info{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:12px}.lexi-user-buttons{display:flex;gap:8px}.lexi-settings-btn,.lexi-signout-btn{background:none;border:1px solid rgba(255,255,255,.3);color:#fff9;padding:4px 12px;border-radius:4px;cursor:pointer;font-family:Courier New,monospace;font-size:10px;transition:all .2s}.lexi-settings-btn:hover,.lexi-signout-btn:hover{background:#ffffff1a;color:#fff}.lexi-secondary-btn{background:#ffffff1a!important;color:#fff!important;border-color:#ffffff4d!important}.lexi-secondary-btn:hover{background:#fff3!important;color:#fff!important}@media(min-width:415px)and (min-height:897px){.lexi-app{justify-content:center}}.lexi-game-container{width:100%;height:100vh;height:100dvh;margin:0 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;overflow:hidden;box-sizing:border-box;padding:.25rem;position:relative;z-index:1}@media(min-width:361px)and (max-width:767px){.lexi-game-container{max-width:360px}}@media(min-width:768px){.lexi-game-container{max-width:480px}.lexi-movement-controls{display:flex!important}.lexi-mobile-pause-btn{display:none!important}}.lexi-menu{text-align:center;max-width:400px;width:100%;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1 auto;overflow-y:auto;position:relative;z-index:1}.lexi-title{font-size:2.5rem;margin:0 0 .5rem;letter-spacing:.2em;text-transform:uppercase;color:#fff}.lexi-subtitle{font-size:.9rem;margin:0 0 2rem;color:#888;letter-spacing:.1em}.lexi-mode-buttons{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.lexi-mode-btn{padding:1rem 2rem;font-size:1rem;font-family:Courier New,monospace;background:#fff;color:#000;border:2px solid #fff;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:all .2s}.lexi-mode-btn:hover{background:#000;color:#fff}.lexi-hint{font-size:.8rem;color:#666;margin-top:1rem}.lexi-help-buttons{display:flex;gap:.75rem;margin-top:.75rem;flex-wrap:wrap;justify-content:center}.lexi-help-btn{padding:.5rem 1rem;font-size:.8rem;font-family:Courier New,monospace;background:transparent;color:#888;border:1px solid #444;cursor:pointer;text-transform:none;letter-spacing:.05em;transition:all .2s}.lexi-help-btn:hover{color:#fff;border-color:#666}.lexi-intro{width:100vw;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;position:fixed;top:0;left:0;-webkit-overflow-scrolling:touch;z-index:1}.lexi-intro-content{width:100%;max-width:400px;display:flex;flex-direction:column;gap:1.2rem;padding-bottom:2rem;box-sizing:border-box}.lexi-intro-section{display:flex;flex-direction:column;gap:.75rem}.lexi-intro-heading{font-size:1.1rem;font-weight:700;color:#fff;margin:0;text-transform:uppercase;letter-spacing:.1em}.lexi-intro-text{font-size:.9rem;color:#ccc;line-height:1.5;margin:0}.lexi-intro-list{display:flex;flex-direction:column;gap:.75rem}.lexi-intro-item{display:flex;align-items:center;gap:.75rem;font-size:.85rem;color:#ccc;line-height:1.4}.lexi-intro-key{display:inline-block;padding:.25rem .5rem;background:#fff;color:#000;border:1px solid #fff;font-weight:700;font-size:.75rem;min-width:3rem;text-align:center;font-family:Courier New,monospace}.lexi-intro-icon{font-size:1.2rem;min-width:1.5rem;text-align:center}.lexi-intro-demo{margin:1rem 0;padding:1rem;border:2px solid #fff;background:#ffffff0d}.lexi-intro-demo-label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem}.lexi-intro-demo-box{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem}.lexi-demo-target{color:#fff}.lexi-demo-rack{color:#ccc;min-height:1.5rem}.lexi-demo-letter{display:inline-block;padding:.1rem .3rem;margin:0 .1rem;background:#fff;color:#000;font-weight:700;animation:collect .5s ease-in}.lexi-demo-letter.fade-in{animation:fadeIn .5s ease-in}.lexi-demo-result{color:#0f0;font-weight:700;animation:fadeIn 1s ease-in .5s both}@keyframes collect{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.lexi-game-canvas-wrapper{position:relative;width:100%;flex-shrink:1;flex-grow:0;min-height:0;max-height:100%}.lexi-game-canvas{width:100%;height:100%;border:1px solid #fff;margin:0;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;box-sizing:border-box}.lexi-game-canvas canvas{display:block!important;margin:0 auto!important}.lexi-hud{width:100%;padding:.25rem .5rem;font-size:.65rem;border:1px solid #333;background:#000c;flex-shrink:0;min-height:fit-content;box-sizing:border-box}.lexi-hud-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5em;margin-bottom:.3em}.lexi-hud-left{display:flex;flex-direction:column;gap:.25rem}.lexi-target{text-align:right}.lexi-target-word{font-size:1rem;font-weight:700;letter-spacing:.1em;margin-bottom:.2rem}.lexi-target-needed{font-size:.75rem;color:#888}.lexi-rack{padding-top:.3rem;border-top:1px solid #333;font-size:.75rem;letter-spacing:.15em;min-height:1.2rem}.lexi-full{color:#f44;font-weight:700}.lexi-effect-warning{color:#f44;font-weight:700;font-size:.7rem;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.lexi-hearts-pulse{animation:hearts-pulse .5s ease-in-out 4;color:red!important}@keyframes hearts-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}.lexi-mistake-meter{padding-top:.2rem;border-top:1px solid #333;font-size:.7rem;color:#fa0;letter-spacing:.1em;min-height:1rem}.lexi-mobile-controls{width:100%;padding:1rem;margin-top:.5rem;display:flex;gap:1.5rem;align-items:center;justify-content:space-between;flex-shrink:0;min-height:fit-content;box-sizing:border-box}@media(max-width:767px){.lexi-movement-controls{display:none!important}}.lexi-movement-controls{display:flex;flex-direction:column;gap:1rem;align-items:center}.lexi-arrow-row{display:flex;gap:1rem;justify-content:center}.lexi-arrow-btn{width:7rem;height:7rem;border-radius:.75rem;border:3px solid #fff;background:#ffffff1a;color:#fff;font-size:2rem;font-family:Courier New,monospace;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex-shrink:0}.lexi-arrow-btn:active{background:#ffffff4d;transform:scale(.95)}.lexi-fire-btn{flex:1;min-width:12rem;height:7rem;border-radius:.75rem;border:3px solid #fff;background:#ff00004d;color:#fff;font-size:1.5rem;font-weight:700;font-family:Courier New,monospace;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex-shrink:0}@media(max-width:767px){.lexi-fire-btn{width:70%;min-width:unset;flex:unset;height:5.5rem;font-size:1.6rem}}.lexi-fire-btn:active{background:#f006;transform:scale(.95)}.lexi-controls{width:100%;max-width:360px;padding:1rem;display:flex;justify-content:center}.lexi-blast-btn{padding:1rem 3rem;font-size:1.2rem;font-family:Courier New,monospace;background:#fff;color:#000;border:2px solid #fff;cursor:pointer;text-transform:uppercase;letter-spacing:.15em;font-weight:700}.lexi-blast-btn:hover{background:#000;color:#fff}.lexi-stats{margin:2rem 0;font-size:1.1rem;display:flex;flex-direction:column;gap:.5rem}.lexi-start-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000c;z-index:100}.lexi-start-btn{padding:1.5rem 3rem;font-size:1.5rem;font-family:Courier New,monospace;background:#fff;color:#000;border:3px solid #fff;cursor:pointer;text-transform:uppercase;letter-spacing:.2em;font-weight:700;border-radius:.5rem;transition:all .2s}.lexi-start-btn:hover{background:#000;color:#fff;transform:scale(1.05)}.lexi-start-btn:active{transform:scale(.95)}.lexi-start-btn:disabled{opacity:.5;cursor:not-allowed}.lexi-pause-btn{width:100%;padding:.5rem .8rem;margin-top:.25rem;font-size:.7rem;font-family:Courier New,monospace;background:#000c;color:#fff;border:1px solid #333;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:all .2s;flex-shrink:0;text-align:center}.lexi-pause-btn:hover{background:#fff3}.lexi-pause-btn:active{transform:scale(.95)}.lexi-mobile-pause-btn{display:none}@media(max-width:767px){.lexi-pause-btn-desktop{display:none}.lexi-mobile-controls{gap:1rem}.lexi-mobile-pause-btn{display:flex;width:30%;height:5.5rem;border-radius:.75rem;border:3px solid #fff;background:#ffffff1a;color:#fff;font-size:2.2rem;font-family:Courier New,monospace;cursor:pointer;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;flex-shrink:0}.lexi-mobile-pause-btn:active{background:#ffffff4d;transform:scale(.95)}}.lexi-pause-menu{display:flex;flex-direction:column;align-items:center;gap:.5rem}.lexi-tutorial-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:transparent;z-index:101;pointer-events:none}.lexi-tutorial-content{width:100%;height:100%;position:relative}.lexi-tutorial-header{position:absolute;top:10%;left:50%;transform:translate(-50%);z-index:102}.lexi-tutorial-title{color:#fff;font-size:1.1rem;font-weight:700;text-align:center;background:#000000e6;padding:.75rem 1.5rem;border-radius:.5rem;border:2px solid #fff;letter-spacing:.1em;animation:tutorial-title-pulse 2s ease-in-out infinite}@keyframes tutorial-title-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.98)}}.lexi-tutorial-finger{position:absolute;display:flex;flex-direction:column;align-items:center;gap:.5rem}.lexi-tutorial-finger-icon{font-size:3rem;filter:drop-shadow(0 0 8px rgba(255,255,255,.8))}.lexi-tutorial-tap{left:15%;top:65%;transform:translateY(-50%);animation:tutorial-tap 4s ease-in-out infinite}.lexi-tutorial-drag{left:50%;top:65%;transform:translate(-50%,-50%);animation:tutorial-drag 4s ease-in-out infinite 2s}@keyframes tutorial-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}@keyframes tutorial-tap{0%,to{opacity:0;transform:translateY(-50%) scale(1)}5%,15%{opacity:1;transform:translateY(-50%) scale(1)}8%,12%{transform:translateY(-50%) scale(.85)}20%,to{opacity:0;transform:translateY(-50%) scale(1)}}@keyframes tutorial-drag{0%,to{opacity:0;transform:translate(-50%,-50%)}55%,85%{opacity:1}55%{transform:translate(-100%,-50%)}70%{transform:translateY(-50%)}85%{transform:translate(-50%,-50%)}90%,to{opacity:0;transform:translate(-50%,-50%)}}.lexi-konami-badge{display:inline-block;font-size:1.2rem;animation:konami-sparkle 1s ease-in-out infinite;cursor:help}@keyframes konami-sparkle{0%,to{transform:scale(1) rotate(0);opacity:1}25%{transform:scale(1.2) rotate(-10deg);opacity:.8}50%{transform:scale(1.3) rotate(10deg);opacity:1}75%{transform:scale(1.2) rotate(-10deg);opacity:.8}}@media(max-width:430px){.lexi-intro{padding:.75rem .5rem}.lexi-intro-content{gap:1rem;max-width:100%;padding-bottom:1.5rem}.lexi-title{font-size:2rem;margin-bottom:.5rem}.lexi-intro-heading{font-size:1rem}.lexi-intro-text{font-size:.85rem;line-height:1.5}.lexi-intro-section{gap:.6rem}.lexi-intro-item{font-size:.8rem;gap:.5rem;line-height:1.4}.lexi-intro-key{font-size:.7rem;padding:.2rem .4rem;min-width:2.5rem}.lexi-intro-icon{font-size:1rem;min-width:1.2rem}.lexi-intro-demo{padding:.75rem;margin:.5rem 0}.lexi-intro-demo-label{font-size:.7rem;margin-bottom:.5rem}.lexi-intro-demo-box{font-size:.8rem;gap:.4rem}.lexi-mode-btn{padding:.8rem 1.5rem;font-size:.9rem;margin-top:.5rem}.lexi-game-container{width:100%;padding:.5rem;height:100vh;height:100dvh;box-sizing:border-box}.lexi-game-canvas{width:100%;max-width:100%;max-height:calc(100vh - 165px);max-height:calc(100dvh - 165px)}.lexi-hud{width:100%;padding:.1rem .25rem;font-size:.55rem}.lexi-hud-top{flex-direction:column;gap:.25rem;margin-bottom:.2rem}.lexi-target{text-align:left}.lexi-target-word{font-size:.85rem}.lexi-target-needed{font-size:.65rem}.lexi-rack{font-size:.65rem;padding-top:.2rem;min-height:.9rem}.lexi-mobile-controls{width:100%;padding:.4rem .5rem .6rem;gap:.5rem}.lexi-movement-controls{display:none!important}.lexi-arrow-btn{width:1.6rem;height:1.6rem;font-size:.75rem}.lexi-mobile-pause-btn{width:30%!important;height:4.5rem!important;font-size:1.8rem!important}.lexi-fire-btn{width:70%!important;height:4.5rem!important;font-size:1.4rem!important;max-width:unset!important;flex:unset!important}}@media(max-width:767px)and (max-height:667px){.lexi-game-container{height:100vh;height:100dvh;padding:.4rem}.lexi-game-canvas{max-height:calc(100vh - 140px);max-height:calc(100dvh - 140px)}.lexi-hud{padding:.08rem .25rem;font-size:.55rem}.lexi-mobile-controls{padding:.35rem .4rem .5rem;gap:.5rem}.lexi-movement-controls{display:none!important}.lexi-arrow-btn{width:1.5rem;height:1.5rem;font-size:.7rem}.lexi-mobile-pause-btn{width:30%!important;height:3.5rem!important;font-size:1.4rem!important}.lexi-fire-btn{width:70%!important;height:3.5rem!important;font-size:1.1rem!important;max-width:unset!important;flex:unset!important}}@media(max-width:767px)and (max-height:844px)and (min-height:668px){.lexi-intro{padding:.75rem .5rem}.lexi-intro-content{gap:1rem;padding-bottom:1.5rem}.lexi-title{font-size:2rem;margin-bottom:.4rem}.lexi-intro-heading{font-size:.95rem}.lexi-intro-text{font-size:.85rem}.lexi-intro-section{gap:.6rem}.lexi-intro-item{font-size:.75rem;gap:.5rem}.lexi-intro-demo{padding:.6rem;margin:.4rem 0}.lexi-intro-demo-box{font-size:.75rem}.lexi-mode-btn{padding:.75rem 1.4rem;font-size:.88rem}.lexi-hud{padding:.1rem .25rem;font-size:.55rem}.lexi-hud-top{margin-bottom:.2rem}.lexi-target-word{font-size:.9rem}.lexi-rack{padding-top:.2rem;min-height:.9rem;font-size:.7rem}.lexi-mobile-controls{padding:.35rem .45rem .55rem;gap:.5rem}.lexi-movement-controls{display:none!important}.lexi-arrow-btn{width:1.7rem;height:1.7rem}.lexi-mobile-pause-btn{width:30%!important;height:4.5rem!important;font-size:1.8rem!important}.lexi-fire-btn{width:70%!important;height:4.5rem!important;font-size:1.4rem!important;max-width:unset!important;flex:unset!important}}@media(orientation:landscape){.lexi-game-canvas{max-width:100%}}@media(max-width:430px)and (max-height:932px){.lexi-intro{padding:.5rem}.lexi-intro-content{gap:.9rem;padding-bottom:1.2rem}.lexi-title{font-size:1.8rem;margin-bottom:.3rem}.lexi-intro-heading{font-size:.9rem}.lexi-intro-text{font-size:.8rem}.lexi-intro-section{gap:.5rem}.lexi-intro-item{font-size:.75rem;gap:.45rem}.lexi-intro-key{font-size:.65rem;min-width:2.25rem}.lexi-intro-demo{padding:.6rem}.lexi-intro-demo-box{font-size:.75rem}.lexi-mode-btn{padding:.7rem 1.3rem;font-size:.85rem}.lexi-hud{padding:.08rem .2rem;font-size:.5rem}.lexi-target-word{font-size:.8rem}.lexi-rack{font-size:.6rem;padding-top:.15rem;min-height:.8rem}.lexi-mobile-controls{padding:.3rem .35rem .45rem;gap:.5rem}.lexi-movement-controls{display:none!important}.lexi-arrow-btn{width:1.5rem;height:1.5rem;font-size:.7rem}.lexi-mobile-pause-btn{width:30%!important;height:3.2rem!important;font-size:1.3rem!important}.lexi-fire-btn{width:70%!important;height:3.2rem!important;font-size:1rem!important;max-width:unset!important;flex:unset!important}}.lexi-developer-section{margin-top:1rem;width:100%;display:flex;justify-content:center;padding:0 1rem}.lexi-developer-btn{background:#0009;border:3px solid rgba(255,255,255,.3);border-radius:12px;padding:1rem;cursor:pointer;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:.5rem;min-width:140px}.lexi-developer-btn:hover{transform:translateY(-4px);border-color:#8a2be2cc;box-shadow:0 8px 20px #8a2be266;background:#000c}.lexi-developer-avatar{width:100px;height:100px;border-radius:8px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;transition:transform .3s}.lexi-developer-btn:hover .lexi-developer-avatar{transform:scale(1.1)}.lexi-developer-label{font-family:Courier New,monospace;font-size:14px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.5);letter-spacing:1px}@media(max-width:430px){.lexi-developer-section{margin-top:.75rem;padding:0 .5rem}.lexi-developer-btn{min-width:120px;padding:.75rem}.lexi-developer-avatar{width:80px;height:80px}.lexi-developer-label{font-size:12px}}.game-over-screen{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;animation:overlay-fade-in .3s ease-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.game-over-content{background:linear-gradient(135deg,#1a1a2e,#16213e);border:3px solid #0f3460;border-radius:20px;padding:48px;width:90%;max-width:500px;text-align:center;box-shadow:0 0 60px #0f346099,0 0 120px #e945604d,0 20px 60px #000c;animation:content-slide-up .5s ease-out;position:relative;overflow:hidden}@keyframes content-slide-up{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.game-over-content:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,#e94560,#0f3460,#e94560,transparent);animation:border-glow 3s ease-in-out infinite}@keyframes border-glow{0%,to{opacity:.5}50%{opacity:1}}.game-over-content h1{margin:0 0 40px;color:#e94560;font-size:48px;font-weight:700;text-shadow:0 0 30px rgba(233,69,96,.8),0 0 60px rgba(233,69,96,.4),0 4px 8px rgba(0,0,0,.8);letter-spacing:.15em;text-transform:uppercase;animation:title-pulse 2s ease-in-out infinite}@keyframes title-pulse{0%,to{text-shadow:0 0 30px rgba(233,69,96,.8),0 0 60px rgba(233,69,96,.4),0 4px 8px rgba(0,0,0,.8)}50%{text-shadow:0 0 40px rgba(233,69,96,1),0 0 80px rgba(233,69,96,.6),0 4px 8px rgba(0,0,0,.8)}}.final-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:40px}.stat-item{background:linear-gradient(135deg,#0f346066,#0f346033);border:2px solid rgba(15,52,96,.6);border-radius:12px;padding:20px 16px;transition:all .3s ease;position:relative;overflow:hidden;animation:stat-fade-in .6s ease-out backwards}.stat-item:nth-child(1){animation-delay:.1s}.stat-item:nth-child(2){animation-delay:.2s}.stat-item:nth-child(3){animation-delay:.3s}.stat-item:nth-child(4){animation-delay:.4s}@keyframes stat-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stat-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.stat-item:hover{transform:translateY(-4px) scale(1.02);border-color:#0f3460;background:linear-gradient(135deg,#0f346099,#0f34604d);box-shadow:0 8px 24px #0f346066}.stat-item:hover:before{left:100%}.stat-label{font-size:11px;color:#ffffffb3;margin-bottom:12px;text-transform:uppercase;letter-spacing:1.5px;font-weight:600}.stat-value{font-size:32px;font-weight:700;color:#fff;text-shadow:0 0 20px rgba(255,255,255,.3);font-family:Courier New,monospace}.guest-prompt{background:linear-gradient(135deg,#0f346080,#0f34604d);border:2px solid #0f3460;color:#fff;padding:16px;border-radius:12px;margin-bottom:28px;font-size:14px;animation:message-slide-in .4s ease-out .5s backwards;box-shadow:0 4px 16px #0f34604d}.score-submitted{background:linear-gradient(135deg,#2ed5734d,#2ed57326);border:2px solid #2ed573;color:#2ed573;padding:16px;border-radius:12px;margin-bottom:28px;font-size:14px;font-weight:600;animation:message-slide-in .4s ease-out .5s backwards;box-shadow:0 4px 16px #2ed5734d;text-shadow:0 0 10px rgba(46,213,115,.5)}.share-message{background:linear-gradient(135deg,#0f346080,#0f34604d);border:2px solid #0f3460;color:#fff;padding:14px;border-radius:12px;margin-bottom:20px;font-size:14px;animation:message-pop-in .3s ease-out;box-shadow:0 4px 16px #0f34604d}@keyframes message-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes message-pop-in{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.game-over-buttons{display:flex;flex-direction:column;gap:14px}.game-over-buttons button{padding:18px 32px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid;font-family:Courier New,monospace;text-transform:uppercase;letter-spacing:.1em;position:relative;overflow:hidden;animation:button-fade-in .4s ease-out backwards}.game-over-buttons button:nth-child(1){animation-delay:.6s}.game-over-buttons button:nth-child(2){animation-delay:.7s}.game-over-buttons button:nth-child(3){animation-delay:.8s}@keyframes button-fade-in{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.game-over-buttons button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.game-over-buttons button:hover:before{width:300px;height:300px}.share-button{background:linear-gradient(135deg,#0f346099,#0f346066);border-color:#0f3460;color:#fff}.share-button:hover{background:linear-gradient(135deg,#0f3460,#16213e);transform:translateY(-3px);box-shadow:0 6px 20px #0f346080,0 0 30px #0f34604d;border-color:#0f3460}.share-button:active{transform:translateY(-1px)}.restart-button{background:linear-gradient(135deg,#e94560,#c93750);border-color:#e94560;color:#fff}.restart-button:hover{background:linear-gradient(135deg,#ff5070,#e94560);transform:translateY(-3px);box-shadow:0 6px 20px #e9456080,0 0 40px #e9456066;border-color:#ff5070}.restart-button:active{transform:translateY(-1px)}.menu-button{background:transparent;border-color:#ffffff4d;color:#fffc}.menu-button:hover{background:#ffffff1a;border-color:#fff9;color:#fff;transform:translateY(-3px);box-shadow:0 6px 20px #ffffff1a}.menu-button:active{transform:translateY(-1px)}@media(max-width:600px){.game-over-content{padding:32px 24px}.game-over-content h1{font-size:36px;margin-bottom:32px}.stat-value{font-size:28px}.stat-label{font-size:10px}.game-over-buttons button{padding:16px 24px;font-size:14px}}.password-reset-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.password-reset-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #0f3460;border-radius:16px;padding:32px;width:90%;max-width:400px;position:relative;box-shadow:0 8px 32px #00000080}.password-reset-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.password-reset-modal-close:hover{color:#e94560}.password-reset-modal h2{margin:0 0 24px;color:#fff;text-align:center;font-size:28px}.reset-description{color:#fffc;text-align:center;margin-bottom:24px;font-size:14px;line-height:1.5}.email-sent-message{text-align:center;padding:20px 0}.email-sent-message h3{color:#fff;margin:0 0 16px;font-size:24px}.email-sent-message p{color:#fffc;margin:0 0 12px;line-height:1.5;font-size:14px}.email-sent-message strong{color:#fff;font-weight:600}.close-button{width:100%;padding:14px;background:linear-gradient(135deg,#0f3460,#16213e);border:2px solid #0f3460;border-radius:8px;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;margin-top:20px}.close-button:hover{background:linear-gradient(135deg,#16213e,#0f3460);transform:translateY(-2px);box-shadow:0 4px 12px #0f346066}.cancel-button{width:100%;padding:12px;background:none;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fffc;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:12px}.cancel-button:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.settings-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.settings-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #0f3460;border-radius:16px;padding:32px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 8px 32px #00000080}.settings-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s}.settings-close:hover{color:#e94560}.settings-modal h2{margin:0 0 24px;color:#fff;text-align:center;font-size:28px}.settings-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.1)}.settings-section:last-child{border-bottom:none;margin-bottom:0}.settings-section h3{color:#fff;margin:0 0 16px;font-size:18px;font-weight:600}.settings-info{display:flex;flex-direction:column;gap:12px}.settings-info-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff0d;border-radius:8px}.settings-label{color:#ffffffb3;font-size:14px;font-weight:500}.settings-value{color:#fff;font-size:14px;font-weight:600}.settings-action-btn{width:100%;padding:12px;background:linear-gradient(135deg,#0f3460,#16213e);border:2px solid #0f3460;border-radius:8px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.settings-action-btn:hover{background:linear-gradient(135deg,#16213e,#0f3460);transform:translateY(-2px);box-shadow:0 4px 12px #0f346066}.danger-zone{border-bottom-color:#e945604d}.danger-zone h3{color:#e94560}.danger-warning{color:#ffffffb3;font-size:13px;line-height:1.5;margin:0 0 16px;padding:12px;background:#e945601a;border:1px solid rgba(233,69,96,.3);border-radius:8px}.settings-delete-btn{width:100%;padding:12px;background:#e9456033;border:2px solid rgba(233,69,96,.5);border-radius:8px;color:#e94560;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.settings-delete-btn:hover{background:#e945604d;border-color:#e94560;color:#fff}.settings-error{background:#e9456033;border:1px solid #e94560;color:#ff6b6b;padding:12px;border-radius:8px;margin-top:16px;font-size:14px;text-align:center}.confirm-dialog-overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1001}.confirm-dialog{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid #e94560;border-radius:16px;padding:32px;width:90%;max-width:400px;box-shadow:0 8px 32px #e945604d}.confirm-dialog h3{color:#fff;margin:0 0 16px;font-size:24px;text-align:center}.confirm-dialog p{color:#fffc;margin:0 0 24px;line-height:1.6;font-size:14px;text-align:center}.confirm-actions{display:flex;gap:12px;margin-top:24px}.confirm-delete,.confirm-cancel{flex:1;padding:12px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-delete{background:#e94560;border:2px solid #e94560;color:#fff}.confirm-delete:hover:not(:disabled){background:#ff5575;border-color:#ff5575;transform:translateY(-2px);box-shadow:0 4px 12px #e9456066}.confirm-delete:disabled{opacity:.6;cursor:not-allowed}.confirm-cancel{background:none;border:2px solid rgba(255,255,255,.3);color:#fff}.confirm-cancel:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff80}.settings-audio-control{margin-bottom:20px}.settings-audio-control:last-child{margin-bottom:0}.settings-audio-label{display:block;color:#ffffffe6;font-size:14px;font-weight:500;margin-bottom:8px}.settings-volume-slider-container{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:8px}.settings-mute-button{background:none;border:none;font-size:24px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;transition:transform .2s;flex-shrink:0}.settings-mute-button:hover{transform:scale(1.1)}.settings-volume-slider{flex:1;height:6px;border-radius:3px;background:#fff3;outline:none;-webkit-appearance:none;cursor:pointer}.settings-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#0f3460;border:2px solid #fff;cursor:pointer;transition:all .2s}.settings-volume-slider::-webkit-slider-thumb:hover{background:#16213e;transform:scale(1.2)}.settings-volume-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#0f3460;border:2px solid #fff;cursor:pointer;transition:all .2s}.settings-volume-slider::-moz-range-thumb:hover{background:#16213e;transform:scale(1.2)}.settings-volume-percentage{color:#fffc;font-size:14px;font-weight:600;min-width:45px;text-align:right;flex-shrink:0}.backstory-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.backstory-modal{background:#000;border:2px solid #fff;max-width:600px;width:90%;max-height:95vh;height:auto;overflow:hidden;position:relative;padding:30px 25px 20px;box-shadow:0 0 30px #ffffff4d;animation:slideUp .4s ease;display:flex;flex-direction:column}.backstory-close{position:absolute;top:10px;right:15px;background:none;border:none;color:#fff;font-size:32px;cursor:pointer;line-height:1;padding:0;width:30px;height:30px;opacity:.6;transition:opacity .2s}.backstory-close:hover{opacity:1}.backstory-content{display:flex;flex-direction:column;align-items:center;gap:15px;flex:1;min-height:0}.backstory-title{font-family:Courier New,monospace;font-size:22px;color:#fff;text-align:center;margin:0;letter-spacing:2px;border-bottom:2px solid #fff;padding-bottom:10px;width:100%;flex-shrink:0}.backstory-scenes{flex:1;display:flex;flex-direction:column;position:relative;width:100%;min-height:0;overflow:hidden}.backstory-scene{opacity:0;position:absolute;inset:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.backstory-scene.active{opacity:1;transform:translateY(0);position:relative;animation:fadeInUp .6s ease}.backstory-scene.done{opacity:0;transform:translateY(-20px)}.backstory-art{font-size:48px;line-height:1.3;text-align:center;margin:0;padding:10px;display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0}.backstory-image-container{position:relative;max-width:250px;max-height:250px;display:flex;align-items:center;justify-content:center}.backstory-image{max-width:250px;max-height:250px;width:auto;height:auto;object-fit:contain;border:2px solid rgba(255,255,255,.3);border-radius:8px;image-rendering:pixelated;image-rendering:crisp-edges}.backstory-image.transition-fade{opacity:1;animation:fadeOutImage 4s ease-in-out forwards}.backstory-image-overlay{position:absolute;top:0;left:50%;transform:translate(-50%);opacity:0;animation:fadeInImage 4s ease-in-out forwards}.backstory-text{font-family:Courier New,monospace;font-size:15px;line-height:1.6;color:#fff;text-align:center;margin:0;white-space:pre-wrap;max-width:100%;flex-shrink:0}.backstory-progress{display:flex;gap:10px;justify-content:center;margin:8px 0;flex-shrink:0}.backstory-dot{width:8px;height:8px;border:1px solid #fff;background:transparent;border-radius:50%;transition:all .3s ease}.backstory-dot.active{background:#fff;box-shadow:0 0 10px #fffc}.backstory-skip{font-family:Courier New,monospace;font-size:14px;background:transparent;border:2px solid #fff;color:#fff;padding:10px 28px;cursor:pointer;transition:all .2s;letter-spacing:1px;flex-shrink:0}.backstory-skip:hover{background:#fff;color:#000;box-shadow:0 0 20px #ffffff80}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes shoot{0%{transform:translateY(0)}10%{transform:translateY(-5px)}20%{transform:translateY(0)}to{transform:translateY(0)}}@keyframes score{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes victory{0%,to{filter:brightness(1)}50%{filter:brightness(1.5)}}@keyframes fadeOutImage{0%{opacity:1}40%{opacity:1}70%{opacity:0}to{opacity:0}}@keyframes fadeInImage{0%{opacity:0}40%{opacity:0}70%{opacity:1}to{opacity:1}}@keyframes transform{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.backstory-art.float{animation:float 3s ease-in-out infinite}.backstory-art.shake{animation:shake .5s ease-in-out infinite}.backstory-art.pulse{animation:pulse 2s ease-in-out infinite}.backstory-art.shoot{animation:shoot 1s ease-in-out infinite}.backstory-art.score{animation:score 1.5s ease-in-out infinite}.backstory-art.victory{animation:victory 2s ease-in-out infinite}.backstory-art.transform{animation:transform 4s ease-in-out}@media(max-width:768px){.backstory-modal{padding:20px 15px 15px;width:95%;max-height:98vh}.backstory-title{font-size:16px;padding-bottom:8px}.backstory-text{font-size:13px;line-height:1.5}.backstory-art{font-size:32px;padding:8px}.backstory-image-container,.backstory-image{max-width:200px;max-height:200px}.backstory-skip{padding:8px 24px;font-size:13px}.backstory-progress{margin:6px 0}.backstory-dot{width:6px;height:6px}}.challenge-selection{text-align:center;width:100%;height:100%;padding:1.5rem 0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.challenge-title{font-size:2rem;margin:0 0 .5rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-shadow:0 0 20px rgba(233,69,96,.6)}.challenge-subtitle{font-size:.85rem;margin:0 0 1.5rem;color:#888;letter-spacing:.1em}.challenge-carousel-container{position:relative;width:100%;display:flex;align-items:center;justify-content:center;flex:1 1 auto;overflow:hidden}.challenge-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;background:#0f3460cc;border:2px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:1.2rem;cursor:pointer;z-index:10;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.challenge-arrow:hover{background:#0f3460;border-color:#ffffff80;transform:translateY(-50%) scale(1.1)}.challenge-arrow-left{left:1rem}.challenge-arrow-right{right:1rem}.challenge-options{display:flex;gap:1.5rem;width:100%;padding:1rem 5rem 1.5rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1 1 auto;align-items:stretch;position:relative;perspective:1000px}.challenge-options::-webkit-scrollbar{display:none}.challenge-card{background:linear-gradient(135deg,#1a1a2e,#16213e);border:2px solid rgba(15,52,96,.6);border-radius:16px;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column;animation:card-fade-in .5s ease-out backwards;min-width:300px;max-width:350px;scroll-snap-align:center;flex-shrink:0}.challenge-card:nth-child(1){animation-delay:.1s}.challenge-card:nth-child(2){animation-delay:.2s}.challenge-card:nth-child(3){animation-delay:.3s}@keyframes card-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.challenge-card:hover{transform:translateY(-8px);border-color:#0f3460;box-shadow:0 12px 32px #0f346080}.challenge-card-header{padding:1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid rgba(255,255,255,.1)}.challenge-card-header.easy{background:linear-gradient(135deg,#2ed57333,#2ed5731a)}.challenge-card-header.medium{background:linear-gradient(135deg,#ffa50033,#ffa5001a)}.challenge-card-header.hard{background:linear-gradient(135deg,#e9456033,#e945601a)}.challenge-card-header h2{margin:0;font-size:1.5rem;letter-spacing:.1em;color:#fff}.difficulty-icon{font-size:1.2rem}.challenge-card-body{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column;gap:1rem}.challenge-description{font-size:.9rem;color:#ccc;line-height:1.5;margin:0}.challenge-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.challenge-features li{font-size:.85rem;color:#aaa;padding-left:1.5rem;position:relative}.challenge-features li:before{content:"▸";position:absolute;left:0;color:#0f3460}.challenge-btn{padding:1rem 2rem;margin:1.5rem;font-size:1rem;font-family:Courier New,monospace;font-weight:700;border:2px solid;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:all .3s ease;border-radius:8px}.easy-btn{background:linear-gradient(135deg,#2ed5734d,#2ed57333);border-color:#2ed573;color:#2ed573}.easy-btn:hover{background:linear-gradient(135deg,#2ed573,#26d07c);color:#000;transform:translateY(-2px);box-shadow:0 6px 20px #2ed57366}.medium-btn{background:linear-gradient(135deg,#ffa5004d,#ffa50033);border-color:orange;color:orange}.medium-btn:hover{background:linear-gradient(135deg,orange,#ff9500);color:#000;transform:translateY(-2px);box-shadow:0 6px 20px #ffa50066}.hard-btn{background:linear-gradient(135deg,#e945604d,#e9456033);border-color:#e94560;color:#e94560}.hard-btn:hover{background:linear-gradient(135deg,#e94560,#c93750);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #e9456066}.back-btn{padding:.75rem 2rem;font-size:.9rem;font-family:Courier New,monospace;background:transparent;color:#888;border:1px solid #444;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:all .2s;border-radius:8px;margin-top:.5rem;flex-shrink:0}.back-btn:hover{color:#fff;border-color:#666;background:#ffffff0d}@media(max-width:600px){.challenge-arrow{width:40px;height:40px;font-size:1rem}.challenge-arrow-left{left:.5rem}.challenge-arrow-right{right:.5rem}.challenge-options{padding:1rem 3rem 1.5rem}.challenge-title{font-size:1.5rem}.challenge-subtitle{font-size:.75rem;margin-bottom:1rem}.challenge-card{min-width:280px;max-width:320px}.challenge-card-header h2{font-size:1.2rem}.challenge-description{font-size:.85rem}.challenge-features li{font-size:.8rem}.challenge-btn{padding:.875rem 1.5rem;font-size:.9rem;margin:1rem}.back-btn{padding:.6rem 1.5rem;font-size:.85rem}}@media(max-width:430px){.challenge-arrow{width:35px;height:35px;font-size:.9rem}.challenge-arrow-left{left:.25rem}.challenge-arrow-right{right:.25rem}.challenge-selection{padding:1rem 0}.challenge-title{font-size:1.3rem;margin-bottom:.3rem}.challenge-subtitle{font-size:.7rem;margin-bottom:.75rem}.challenge-options{padding:.75rem 2.5rem 1rem;gap:1rem}.challenge-card{min-width:260px;max-width:280px}.challenge-card-header{padding:1rem}.challenge-card-header h2{font-size:1.1rem}.challenge-card-body{padding:1rem}.challenge-description{font-size:.8rem}.challenge-features li{font-size:.75rem}.challenge-btn{padding:.75rem 1.25rem;font-size:.85rem;margin:.75rem}}.demo-splash-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.demo-splash-content{background:#000;border:3px solid #fff;padding:2rem;max-width:500px;width:100%;text-align:center;display:flex;flex-direction:column;gap:1.5rem}.demo-splash-title{font-size:2rem;font-weight:700;color:#fff;letter-spacing:.2em;margin:0;text-transform:uppercase;animation:demo-pulse 2s ease-in-out infinite}@keyframes demo-pulse{0%,to{opacity:1}50%{opacity:.7}}.demo-splash-text{display:flex;flex-direction:column;gap:1rem}.demo-splash-text p{color:#ccc;font-size:1rem;line-height:1.5;margin:0}.demo-splash-buttons{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.demo-splash-btn{padding:1rem 2rem;font-size:1rem;font-family:Courier New,monospace;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border:2px solid #fff;cursor:pointer;transition:all .2s;text-decoration:none;display:block}.demo-play-btn{background:#fff;color:#000}.demo-play-btn:hover{background:#000;color:#fff;transform:scale(1.02)}.demo-download-btn{background:#0f0;color:#000;border-color:#0f0}.demo-download-btn:hover{background:#000;color:#0f0;transform:scale(1.02)}.demo-cancel-btn{background:transparent;color:#888;border-color:#888}.demo-cancel-btn:hover{background:#ffffff1a;color:#fff;border-color:#fff}@media(max-width:430px){.demo-splash-content{padding:1.5rem;gap:1rem}.demo-splash-title{font-size:1.5rem}.demo-splash-text p{font-size:.9rem}.demo-splash-btn{padding:.8rem 1.5rem;font-size:.9rem}}.about-developer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(ellipse at center,#1a0033,#000);display:flex;align-items:center;justify-content:center;z-index:1000;overflow-y:auto;padding:20px}.about-developer-container{max-width:600px;width:100%;position:relative;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.about-back-btn{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);padding:10px 20px;font-family:Courier New,monospace;font-size:14px;font-weight:700;cursor:pointer;border-radius:5px;margin-bottom:20px;transition:all .2s;text-shadow:0 0 10px rgba(255,255,255,.5)}.about-back-btn:hover{background:#fff3;border-color:#ffffff80;transform:translate(-2px)}.about-content{background:#000c;border:3px solid rgba(255,255,255,.3);border-radius:15px;padding:40px;box-shadow:0 0 30px #8a2be24d;text-align:center}.about-avatar{margin-bottom:30px;display:flex;justify-content:center}.about-avatar-img{width:200px;height:200px;border:4px solid rgba(255,255,255,.3);border-radius:10px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;box-shadow:0 0 20px #8a2be266;transition:transform .3s}.about-avatar-img:hover{transform:scale(1.05)}.about-title{font-family:Courier New,monospace;font-size:28px;font-weight:700;color:#fff;text-shadow:0 0 10px rgba(138,43,226,.8);margin-bottom:20px;letter-spacing:2px}.about-info{margin-bottom:30px}.about-name{font-family:Courier New,monospace;font-size:24px;font-weight:700;color:#fff;margin-bottom:10px;text-shadow:0 0 10px rgba(255,255,255,.5)}.about-link{display:inline-block;font-family:Courier New,monospace;font-size:18px;color:#0ff;text-decoration:none;padding:8px 16px;border:2px solid rgba(0,255,255,.3);border-radius:5px;transition:all .3s;text-shadow:0 0 10px rgba(0,255,255,.5)}.about-link:hover{background:#00ffff1a;border-color:#0ff9;transform:translateY(-2px);box-shadow:0 0 15px #00ffff80}.about-description{margin:30px 0;padding:20px;background:#ffffff0d;border-radius:10px;border:1px solid rgba(255,255,255,.1)}.about-description p{font-family:Courier New,monospace;font-size:16px;line-height:1.6;color:#ffffffe6;margin:0}.about-actions{margin-top:30px}.about-privacy-btn{background:#0096ff33;color:#fff;border:2px solid rgba(0,150,255,.5);padding:12px 24px;font-family:Courier New,monospace;font-size:16px;font-weight:700;cursor:pointer;border-radius:8px;transition:all .3s;text-shadow:0 0 10px rgba(0,150,255,.8)}.about-privacy-btn:hover{background:#0096ff4d;border-color:#0096ffcc;transform:translateY(-2px);box-shadow:0 0 20px #0096ff99}@media(max-width:768px){.about-content{padding:30px 20px}.about-avatar-img{width:150px;height:150px}.about-title{font-size:22px}.about-name{font-size:20px}.about-link{font-size:16px}.about-description p{font-size:14px}}.privacy-page{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;background:linear-gradient(135deg,#0a0a0a,#1a1a2e);color:#e0e0e0;padding:2rem 1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;z-index:9999}.privacy-container{max-width:800px;margin:0 auto;background:#ffffff0d;border-radius:12px;padding:2rem;box-shadow:0 8px 32px #0000004d}.privacy-container h1{color:#0f8;font-size:2.5rem;margin-bottom:.5rem;text-align:center}.last-updated{text-align:center;color:#888;font-size:.9rem;margin-bottom:2rem}.privacy-container section{margin-bottom:2rem}.privacy-container h2{color:#0f8;font-size:1.5rem;margin-bottom:1rem;border-bottom:2px solid rgba(0,255,136,.3);padding-bottom:.5rem}.privacy-container p{line-height:1.6;margin-bottom:1rem;color:#d0d0d0}.privacy-container ul{margin-left:1.5rem;line-height:1.8;color:#d0d0d0}.privacy-container li{margin-bottom:.5rem}.privacy-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);text-align:center}.back-link{display:inline-block;color:#0f8;text-decoration:none;font-size:1.1rem;padding:.75rem 1.5rem;border:2px solid #00ff88;border-radius:8px;transition:all .3s ease}.back-link:hover{background:#0f8;color:#0a0a0a;transform:translateY(-2px);box-shadow:0 4px 12px #0f86}.back-button{font-family:inherit;cursor:pointer;background:transparent}@media(max-width:768px){.privacy-container{padding:1.5rem}.privacy-container h1{font-size:2rem}.privacy-container h2{font-size:1.25rem}}
