@tailwind base;@tailwind components;@tailwind utilities;body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}html,body,#root{height:100%}:root{--nb-black: #000000;--nb-white: #FFFFFF;--nb-primary: #FF6B6B;--nb-secondary: #4ECDC4;--nb-accent: #FFE66D;--nb-success: #95E77E;--nb-danger: #FF3E3E;--nb-warning: #FFA500;--nb-info: #A8E6CF;--nb-purple: #C77DFF;--nb-pink: #FFB7C5;--nb-blue: #7CC0FF;--nb-bg-primary: #F7F3F0;--nb-bg-secondary: #E8E8E8;--nb-bg-accent: #D4D4D4;--nb-dark-bg: #1A1A1A;--nb-dark-surface: #2D2D2D;--nb-dark-border: #000000;--nb-font-display: "Space Grotesk", "Inter", sans-serif;--nb-font-body: "Inter", "Helvetica", sans-serif;--nb-font-mono: "JetBrains Mono", monospace;--nb-border-width: 4px;--nb-border-width-thick: 6px;--nb-border-width-thin: 2px;--nb-border-radius: 0px;--nb-shadow-sm: 4px 4px 0px var(--nb-black);--nb-shadow-md: 8px 8px 0px var(--nb-black);--nb-shadow-lg: 12px 12px 0px var(--nb-black);--nb-shadow-xl: 16px 16px 0px var(--nb-black);--nb-spacing-xs: .5rem;--nb-spacing-sm: 1rem;--nb-spacing-md: 1.5rem;--nb-spacing-lg: 2rem;--nb-spacing-xl: 3rem}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #ffff0080,4px 4px #000c;transform:scale(1) rotate(3deg)}50%{box-shadow:0 0 30px #ff0c,6px 6px #000c;transform:scale(1.05) rotate(3deg)}}@keyframes float{0%,to{transform:translateY(0) rotate(1deg)}50%{transform:translateY(-3px) rotate(1deg)}}@keyframes flicker{0%,to{opacity:1}25%{opacity:.8}50%{opacity:.9}75%{opacity:.7}}@keyframes flicker-delayed{0%,to{opacity:.9}33%{opacity:.7}66%{opacity:1}}@keyframes pulse-cta{0%,to{transform:scale(1) translate(0) translateY(0);box-shadow:4px 4px #0ff}50%{transform:scale(1.02) translate(-1px) translateY(-1px);box-shadow:5px 5px #0ff}}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-flicker{animation:flicker 2s ease-in-out infinite}.animate-flicker-delayed{animation:flicker-delayed 2.5s ease-in-out infinite;animation-delay:.5s}.animate-pulse-cta{animation:pulse-cta 1.5s ease-in-out infinite}.level-path{position:absolute;height:4px;background:linear-gradient(90deg,var(--nb-accent) 0%,transparent 100%);border-top:2px solid var(--nb-black);border-bottom:2px solid var(--nb-black);transform:rotate(3deg);z-index:0}.level-path:before{content:"";position:absolute;top:-2px;right:-8px;width:0;height:0;border-left:8px solid var(--nb-accent);border-top:4px solid transparent;border-bottom:4px solid transparent}.level-node-locked{background:linear-gradient(135deg,#6b7280,#374151);border-color:#1f2937;color:#9ca3af;cursor:not-allowed}.level-node-unlocked{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-color:#93c5fd;color:#fff;cursor:pointer}.level-node-current{background:linear-gradient(135deg,#fbbf24,#f59e0b,#ef4444);border-color:#22d3ee;color:#fff;cursor:pointer;position:relative}.level-node-completed{background:linear-gradient(135deg,#10b981,#059669);border-color:#6ee7b7;color:#fff;cursor:pointer}.level-map-mountains{position:absolute;bottom:0;left:0;width:100%;height:30%;background:linear-gradient(45deg,#d1d5db,#9ca3af);clip-path:polygon(0% 100%,25% 60%,50% 80%,75% 40%,100% 70%,100% 100%);opacity:.3}.level-map-clouds{position:absolute;top:10%;width:100%;height:20%;background:radial-gradient(ellipse 60px 40px at 20% 50%,white 50%,transparent 51%),radial-gradient(ellipse 80px 50px at 70% 30%,white 50%,transparent 51%),radial-gradient(ellipse 50px 30px at 85% 60%,white 50%,transparent 51%);opacity:.4;animation:float 8s ease-in-out infinite}@keyframes slide-diagonal{0%{transform:translate(0)}to{transform:translate(100px,100px)}}@keyframes pulse-border{0%,to{border-color:#22d3ee;box-shadow:0 0 #22d3eeb3}50%{border-color:#fbbf24;box-shadow:0 0 0 10px #fbbf2400}}@keyframes slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes float-delayed{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-5px) rotate(-3deg)}}.animate-slide-diagonal{animation:slide-diagonal 20s linear infinite}.animate-pulse-border{animation:pulse-border 2s ease-in-out infinite}.animate-slide-in{animation:slide-in .3s ease-out}.animate-float-delayed{animation:float-delayed 3.5s ease-in-out infinite;animation-delay:1s}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none;overflow-x:auto;overflow-y:hidden}.scrollbar-hide::-webkit-scrollbar{display:none;width:0;height:0;background:transparent}.scrollbar-hide::-webkit-scrollbar-track{background:transparent}.scrollbar-hide::-webkit-scrollbar-thumb{background:transparent}.dark{--nb-bg-primary: var(--nb-dark-bg);--nb-bg-secondary: var(--nb-dark-surface);--nb-bg-accent: #3D3D3D;--nb-shadow-sm: 4px 4px 0px var(--nb-white);--nb-shadow-md: 8px 8px 0px var(--nb-white);--nb-shadow-lg: 12px 12px 0px var(--nb-white);--nb-shadow-xl: 16px 16px 0px var(--nb-white)}.nb-container{background:var(--nb-bg-primary);border:var(--nb-border-width) solid var(--nb-black);box-shadow:var(--nb-shadow-md);position:relative}.dark .nb-container{border-color:var(--nb-white)}.nb-card{background:var(--nb-white);border:var(--nb-border-width) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);padding:var(--nb-spacing-md);position:relative;transition:all .2s ease}.dark .nb-card{background:var(--nb-dark-surface);border-color:var(--nb-white)}.nb-card:hover{transform:translate(-4px,-4px);box-shadow:var(--nb-shadow-md)}.nb-card-accent{background:var(--nb-accent);border:var(--nb-border-width-thick) solid var(--nb-black)}.nb-card-primary{background:var(--nb-primary);border:var(--nb-border-width-thick) solid var(--nb-black);color:var(--nb-white)}.nb-card-secondary{background:var(--nb-secondary);border:var(--nb-border-width-thick) solid var(--nb-black)}.nb-btn{background:var(--nb-white);border:var(--nb-border-width) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);padding:var(--nb-spacing-sm) var(--nb-spacing-md);font-family:var(--nb-font-display);font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;position:relative;transition:all .15s ease;display:inline-block;user-select:none}.dark .nb-btn{background:var(--nb-dark-surface);border-color:var(--nb-white);color:var(--nb-white)}.nb-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.dark .nb-btn:hover{box-shadow:6px 6px 0 var(--nb-white)}.nb-btn:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.dark .nb-btn:active{box-shadow:0 0 0 var(--nb-white)}.nb-btn-primary{background:var(--nb-primary);color:var(--nb-white);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);transition:all .15s ease}.nb-btn-primary:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.nb-btn-primary:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.nb-btn-secondary{background:var(--nb-secondary);color:var(--nb-black);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);transition:all .15s ease}.nb-btn-secondary:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.nb-btn-secondary:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.nb-btn-accent{background:var(--nb-accent);color:var(--nb-black);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);transition:all .15s ease}.nb-btn-accent:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.nb-btn-accent:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.nb-btn-success{background:var(--nb-success);color:var(--nb-black);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);transition:all .15s ease}.nb-btn-success:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.nb-btn-success:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.nb-btn-danger{background:var(--nb-danger);color:var(--nb-white);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-sm);transition:all .15s ease}.nb-btn-danger:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--nb-black)}.nb-btn-danger:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--nb-black)}.nb-title{font-family:var(--nb-font-display);font-weight:900;text-transform:uppercase;letter-spacing:-.02em;line-height:.9;color:var(--nb-black)}.dark .nb-title{color:var(--nb-white)}.nb-heading{font-family:var(--nb-font-display);font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--nb-black)}.dark .nb-heading{color:var(--nb-white)}.nb-label{font-family:var(--nb-font-body);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.875rem;color:var(--nb-black)}.dark .nb-label{color:var(--nb-white)}.nb-input{background:var(--nb-white);border:var(--nb-border-width) solid var(--nb-black);box-shadow:inset 0 0 0 2px transparent;padding:var(--nb-spacing-sm);font-family:var(--nb-font-body);font-weight:500;transition:all .2s ease}.dark .nb-input{background:var(--nb-dark-surface);border-color:var(--nb-white);color:var(--nb-white)}.nb-input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--nb-primary)}.nb-badge{display:inline-block;padding:.25rem .75rem;background:var(--nb-accent);border:var(--nb-border-width-thin) solid var(--nb-black);font-family:var(--nb-font-mono);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.nb-badge-success{background:var(--nb-success);color:var(--nb-black)}.nb-badge-danger{background:var(--nb-danger);color:var(--nb-white)}.nb-badge-info{background:var(--nb-info);color:var(--nb-black)}.nb-modal{background:var(--nb-white);border:var(--nb-border-width-thick) solid var(--nb-black);box-shadow:var(--nb-shadow-xl);position:relative}.dark .nb-modal{background:var(--nb-dark-bg);border-color:var(--nb-white)}.nb-modal-header{background:var(--nb-primary);border-bottom:var(--nb-border-width) solid var(--nb-black);padding:var(--nb-spacing-md)}.dark .nb-modal-header{border-color:var(--nb-white)}@keyframes nb-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px) rotate(-1deg)}75%{transform:translate(5px) rotate(1deg)}}@keyframes nb-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes nb-glitch{0%,to{clip-path:inset(0 0 0 0);transform:translate(0)}20%{clip-path:inset(20% 0 30% 0);transform:translate(-2px,2px)}40%{clip-path:inset(50% 0 20% 0);transform:translate(2px,-2px)}60%{clip-path:inset(10% 0 60% 0);transform:translate(-1px,1px)}80%{clip-path:inset(80% 0 5% 0);transform:translate(1px,-1px)}}.nb-animate-shake{animation:nb-shake .5s ease-in-out}.nb-animate-bounce{animation:nb-bounce .6s ease-in-out infinite}.nb-animate-glitch{animation:nb-glitch 1s ease-in-out infinite}@keyframes dollar-3d-pulse{0%,to{transform:scale(1) translateY(0);filter:brightness(1) drop-shadow(0 4px 8px rgba(0,0,0,.3))}25%{transform:scale(1.05) translateY(-2px);filter:brightness(1.1) drop-shadow(0 5px 10px rgba(0,0,0,.35))}50%{transform:scale(1.08) translateY(-3px);filter:brightness(1.15) drop-shadow(0 6px 12px rgba(0,0,0,.4))}75%{transform:scale(1.05) translateY(-2px);filter:brightness(1.1) drop-shadow(0 5px 10px rgba(0,0,0,.35))}}.dollar-3d{display:inline-block;transform-style:preserve-3d;perspective:1000px;background:linear-gradient(135deg,#462523,#cb9b51 22%,#f6e27a 45%,#f6f2c0,#f6e27a 55%,#cb9b51 78%,#462523);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:2px 2px 0 #cb9b51,3px 3px 0 var(--nb-black),4px 4px 6px rgba(70,37,35,.4);animation:dollar-3d-pulse 3s cubic-bezier(.4,0,.6,1) infinite;font-weight:900;filter:brightness(1.1) drop-shadow(0 0 10px rgba(246,226,122,.3))}.dollar-3d-small{font-size:2.5rem;animation-delay:.2s}.dollar-3d-medium{font-size:3.5rem;animation-delay:0s}.dollar-3d-large{font-size:4.5rem;animation-delay:.1s}.dollar-inactive{opacity:.4;background:linear-gradient(135deg,#999,#666,#999);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:1px 1px 0 rgba(0,0,0,.2);animation:none;filter:none}.nb-clicky{transition:all .1s ease;cursor:pointer;user-select:none}.nb-clicky:active{transform:translate(2px,2px);box-shadow:none!important}.nb-shadow-colored{box-shadow:8px 8px 0 var(--nb-primary)}.nb-shadow-secondary{box-shadow:8px 8px 0 var(--nb-secondary)}.nb-shadow-accent{box-shadow:8px 8px 0 var(--nb-accent)}.nb-rotate-1{transform:rotate(1deg)}.nb-rotate-2{transform:rotate(-2deg)}.nb-rotate-3{transform:rotate(3deg)}.nb-grid-pattern{background-image:repeating-linear-gradient(0deg,transparent,transparent 20px,var(--nb-black) 20px,var(--nb-black) 21px),repeating-linear-gradient(90deg,transparent,transparent 20px,var(--nb-black) 20px,var(--nb-black) 21px);opacity:.05}.dark .nb-grid-pattern{background-image:repeating-linear-gradient(0deg,transparent,transparent 20px,var(--nb-white) 20px,var(--nb-white) 21px),repeating-linear-gradient(90deg,transparent,transparent 20px,var(--nb-white) 20px,var(--nb-white) 21px);opacity:.1}.nb-stripes{background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,var(--nb-accent) 10px,var(--nb-accent) 20px);opacity:.1}.nb-stripes-animated{background-image:repeating-linear-gradient(45deg,transparent,transparent 15px,rgba(255,230,109,.2) 15px,rgba(255,230,109,.2) 30px);background-size:60px 60px;animation:slide-diagonal 20s linear infinite;opacity:.15}@keyframes level-focus{0%{transform:scale(1) rotate(0);box-shadow:0 0 20px #ffd70066}50%{transform:scale(1.1) rotate(2deg);box-shadow:0 0 40px #ffd700cc,0 0 60px #ffa50099}to{transform:scale(1) rotate(0);box-shadow:0 0 20px #ffd70066}}.animate-level-focus{animation:level-focus 2s ease-in-out infinite}.map-smooth-transition{transition:transform 1s cubic-bezier(.4,0,.2,1)}.nb-hover-lift:hover{transform:translate(-4px,-4px);box-shadow:var(--nb-shadow-md)}.nb-hover-press:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--nb-black)}.nb-hover-rotate:hover{transform:rotate(-2deg)}.nb-focus-ring:focus{outline:none;box-shadow:0 0 0 4px var(--nb-primary),var(--nb-shadow-sm)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-4{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.nb-scrollbar::-webkit-scrollbar{width:16px;height:16px}.nb-scrollbar::-webkit-scrollbar-track{background:var(--nb-bg-secondary);border:2px solid var(--nb-black)}.nb-scrollbar::-webkit-scrollbar-thumb{background:var(--nb-primary);border:2px solid var(--nb-black)}.nb-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--nb-secondary)}.dark .nb-scrollbar::-webkit-scrollbar-track{border-color:var(--nb-white)}.dark .nb-scrollbar::-webkit-scrollbar-thumb{border-color:var(--nb-white)}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-slide-up{animation:slide-up .3s ease-out}.animate-spin-slow{animation:spin-slow 3s linear infinite}@keyframes nbTrendDraw{0%{stroke-dashoffset:100;opacity:0}10%{opacity:.4}90%{opacity:.4}to{stroke-dashoffset:0;opacity:0}}@keyframes nbDotPulse{0%,to{transform:scale(1);opacity:0}20%{opacity:1}50%{transform:scale(1.5);opacity:1}80%{opacity:1}}@keyframes nbGlitchShift{0%,to{transform:translate(0)}10%{transform:translate(-2px)}20%{transform:translate(2px)}30%{transform:translateY(-1px)}40%{transform:translateY(1px)}50%{transform:translate(-1px,-1px)}60%{transform:translate(1px,1px)}70%{transform:translate(0)}}@keyframes nbPulseGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.3) drop-shadow(0 0 5px currentColor)}}.nb-trend-line{stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(2px 2px 0px rgba(0,0,0,.3))}.nb-trend-dot{stroke:var(--nb-black);stroke-width:1;filter:drop-shadow(1px 1px 0px rgba(0,0,0,.5))}.nb-trend-line:nth-child(3n){animation-name:nbTrendDraw,nbGlitchShift;animation-duration:inherit,8s;animation-iteration-count:inherit,infinite;animation-timing-function:inherit,steps(10)}.nb-trend-line:nth-child(2n){animation-direction:alternate-reverse}.nb-trend-line:nth-child(4n){animation-timing-function:cubic-bezier(.68,-.55,.265,1.55)}.nb-trend-line:nth-child(5n){animation-name:nbTrendDraw,nbPulseGlow;animation-duration:inherit,4s;animation-iteration-count:inherit,infinite}.nb-trend-dot:hover{animation:nbDotPulse 1s ease-in-out infinite}.dark .nb-trend-dot{stroke:var(--nb-white)}.dark .nb-trend-line{filter:drop-shadow(2px 2px 0px rgba(255,255,255,.2))}@keyframes spinCandlestick{0%{transform:rotateY(0) scale(1);opacity:.8}25%{transform:rotateY(90deg) scale(1.1);opacity:1}50%{transform:rotateY(180deg) scale(1.2);opacity:1}75%{transform:rotateY(270deg) scale(1.1);opacity:1}to{transform:rotateY(360deg) scale(1);opacity:.8}}@keyframes floatUp{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100px);opacity:0}}@keyframes floatDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100px);opacity:0}}.spinning-candlestick{position:absolute;pointer-events:none;z-index:1000;animation:spinCandlestick 1s cubic-bezier(.68,-.55,.265,1.55);transform-style:preserve-3d;perspective:1000px}.spinning-candlestick.bullish{animation:spinCandlestick 1s cubic-bezier(.68,-.55,.265,1.55),floatUp 1.5s ease-out;color:var(--nb-success);filter:drop-shadow(0 0 10px var(--nb-success))}.spinning-candlestick.bearish{animation:spinCandlestick 1s cubic-bezier(.68,-.55,.265,1.55),floatDown 1.5s ease-out;color:var(--nb-danger);filter:drop-shadow(0 0 10px var(--nb-danger))}.spinning-candlestick.bullish.relative{animation:spinCandlestick 1s cubic-bezier(.68,-.55,.265,1.55) infinite;color:var(--nb-success);filter:drop-shadow(0 0 10px var(--nb-success))}.spinning-candlestick.bearish.relative{animation:spinCandlestick 1s cubic-bezier(.68,-.55,.265,1.55) infinite;color:var(--nb-danger);filter:drop-shadow(0 0 10px var(--nb-danger))}.nb-text-shadow-light{text-shadow:2px 2px 4px rgba(255,255,255,.9),1px 1px 2px rgba(255,255,255,.7)}.nb-text-shadow-dark{text-shadow:2px 2px 4px rgba(0,0,0,.8),1px 1px 2px rgba(0,0,0,.6)}.nb-text-shadow-strong{text-shadow:3px 3px 6px rgba(0,0,0,.9),2px 2px 4px rgba(0,0,0,.7),1px 1px 2px rgba(0,0,0,.5)}.nb-text-readable-on-dark{color:var(--nb-white);text-shadow:2px 2px 4px rgba(0,0,0,.8),1px 1px 2px rgba(0,0,0,.6)}.nb-text-readable-on-light{color:var(--nb-black);text-shadow:2px 2px 4px rgba(255,255,255,.9),1px 1px 2px rgba(255,255,255,.7)}.nb-text-outline{-webkit-text-stroke:1px var(--nb-black);text-shadow:2px 2px 4px rgba(0,0,0,.7)}.nb-text-outline-white{-webkit-text-stroke:1px var(--nb-white);text-shadow:2px 2px 4px rgba(255,255,255,.7)}@keyframes cascade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(180deg)}50%{transform:translate(-50%,-50%) scale(1.1) rotate(-10deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}.animate-cascade-in{animation:cascade-in .6s cubic-bezier(.68,-.55,.265,1.55) both}@keyframes energy-pulse{0%{transform:scale(1);opacity:.8}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:.8}}@keyframes path-draw{0%{stroke-dasharray:0 1000;opacity:0}10%{opacity:.5}to{stroke-dasharray:1000 0;opacity:1}}@keyframes shake{0%,to{transform:translate(0) rotate(-2deg)}25%{transform:translate(-8px) rotate(-3deg)}75%{transform:translate(8px) rotate(-1deg)}}@keyframes level-glow{0%,to{box-shadow:0 0 20px #ffd70066}50%{box-shadow:0 0 40px #ffd700cc,0 0 60px #ffa50099}}@keyframes particle-float{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-50px) scale(.5);opacity:0}}@keyframes sparkle{0%,to{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1) rotate(180deg);opacity:1}}@keyframes map-entrance{0%{opacity:0;transform:scale(.8) rotate(-5deg);filter:blur(10px)}to{opacity:1;transform:scale(1) rotate(0);filter:blur(0px)}}@keyframes cascade-fade-in{0%{opacity:0;transform:translateY(50px) rotate(-10deg) scale(.8)}50%{transform:translateY(-10px) rotate(5deg) scale(1.05)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}.cascade-item{opacity:0;transform:translateY(50px) rotate(-10deg) scale(.8);transition:all .3s ease}.cascade-item.animate{animation:cascade-fade-in .8s cubic-bezier(.34,1.56,.64,1) both}.cascade-item:nth-child(1){animation-delay:0ms}.cascade-item:nth-child(2){animation-delay:.15s}.cascade-item:nth-child(3){animation-delay:.3s}.cascade-item:nth-child(4){animation-delay:.45s}.cascade-item:nth-child(5){animation-delay:.6s}.cascade-item:nth-child(6){animation-delay:.75s}@keyframes box-entrance{0%{opacity:0;transform:translateY(80px) rotate(-15deg) scale(.6);filter:blur(8px)}30%{transform:translateY(-20px) rotate(8deg) scale(1.1);filter:blur(2px)}60%{transform:translateY(5px) rotate(-3deg) scale(.95);filter:blur(0px)}to{opacity:1;transform:translateY(0) rotate(0) scale(1);filter:blur(0px)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.text-gradient-animated{background:linear-gradient(-45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#ffeaa7,plum);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}.hover-zone{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-zone:before{content:"";position:absolute;inset:-20px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;opacity:0;transform:scale(.8);transition:all .3s ease;pointer-events:none}.hover-zone:hover:before{opacity:1;transform:scale(1.2)}.box-entrance{opacity:0;transform:translateY(80px) rotate(-15deg) scale(.6)}.box-entrance.animate{animation:box-entrance 1s cubic-bezier(.25,.46,.45,.94) both}.animate-energy-pulse{animation:energy-pulse 2s ease-in-out infinite}.animate-level-glow{animation:level-glow 3s ease-in-out infinite}.animate-particle-float{animation:particle-float 3s ease-out forwards}.animate-sparkle{animation:sparkle 2s ease-in-out infinite}.animate-map-entrance{animation:map-entrance .8s cubic-bezier(.34,1.56,.64,1) both}.animate-shake{animation:shake .6s ease-in-out infinite}.path-animate{stroke-dasharray:1000;stroke-dashoffset:1000;animation:path-draw 2s ease-in-out forwards}@keyframes drawPath{0%{stroke-dashoffset:1000;opacity:0}10%{opacity:.6}to{stroke-dashoffset:0;opacity:1}}@keyframes stepPathFlow{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}.animate-draw-path{animation:drawPath 4s cubic-bezier(.4,0,.6,1) forwards}.animate-step-flow{animation:stepPathFlow 2s linear infinite}} .level-node-interactive{position:relative;overflow:hidden;transform-style:preserve-3d;perspective:1000px}.level-node-interactive:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,transparent,rgba(255,255,255,.3),transparent);transform:translate(-100%);transition:transform .6s;z-index:1}.level-node-interactive:hover:before{transform:translate(100%)}.path-energy{stroke-dasharray:10;stroke-dashoffset:10;animation:path-flow 2s linear infinite}@keyframes path-flow{to{stroke-dashoffset:0}}.floating-bg-element{position:absolute;pointer-events:none;opacity:.1;animation:float-around 20s ease-in-out infinite}@keyframes float-around{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(30px,-20px) rotate(90deg)}50%{transform:translate(-20px,-40px) rotate(180deg)}75%{transform:translate(-40px,20px) rotate(270deg)}}.celebration-burst{position:absolute;top:50%;left:50%;width:100px;height:100px;transform:translate(-50%,-50%);pointer-events:none}.celebration-burst:before,.celebration-burst:after{content:"✨";position:absolute;font-size:2rem;animation:burst-out 1s ease-out}.celebration-burst:before{top:0;left:0;animation-delay:0s}.celebration-burst:after{bottom:0;right:0;animation-delay:.3s}@keyframes burst-out{0%{transform:scale(0) rotate(0);opacity:1}50%{transform:scale(1.5) rotate(180deg);opacity:.8}to{transform:scale(2) rotate(360deg);opacity:0}}
