@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Rubik+Wet+Paint&display=swap";@import"https://fonts.googleapis.com/css2?family=Jersey+10&display=swap";@import"https://fonts.googleapis.com/css2?family=Road+Rage&display=swap";.start-screen{position:fixed;top:0;left:0;width:100%;height:100vh;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;overflow:hidden;z-index:2000}.start-screen .fire-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;overflow:hidden;z-index:1}.start-screen .fire-effect{width:8px;height:8px;position:absolute;border-radius:50%;animation:floatUp 4s ease-in infinite;opacity:0}.start-screen .purple-fire{background:radial-gradient(circle,#A67CFF 0%,transparent 70%);box-shadow:0 0 20px #a67cff;left:20%;animation-delay:0s}.start-screen .blue-fire{background:radial-gradient(circle,#CFE8FF 0%,transparent 70%);box-shadow:0 0 20px #cfe8ff;left:50%;animation-delay:1.3s}.start-screen .red-fire{background:radial-gradient(circle,#E04B4B 0%,transparent 70%);box-shadow:0 0 20px #e04b4b;left:80%;animation-delay:2.6s}.start-screen .fire-effect:before,.start-screen .fire-effect:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:inherit;box-shadow:inherit}.start-screen .fire-effect:before{left:-100px;animation:floatUp 5s ease-in infinite;animation-delay:.5s}.start-screen .fire-effect:after{left:100px;animation:floatUp 4.5s ease-in infinite;animation-delay:1s}.start-button{font-family:var(--font-intro);font-size:1.5rem;padding:1rem 3rem;background:linear-gradient(135deg,#ffb84d,#ff8c42);color:#000;border:3px solid #FFD700;border-radius:12px;cursor:pointer;z-index:10;font-weight:700;text-transform:uppercase;letter-spacing:2px;box-shadow:0 0 20px #ffb84d99,0 4px 15px #0006;transition:all .3s ease;position:relative;overflow:hidden}.start-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.start-button:hover{transform:scale(1.05);box-shadow:0 0 30px #ffb84de6,0 6px 20px #00000080;border-color:#ffed4e}.start-button:hover:before{width:300px;height:300px}.start-button:active{transform:scale(.98)}.start-button:focus-visible{outline:3px solid #FFD700;outline-offset:4px}@media (max-width: 768px){.start-button{font-size:1.25rem;padding:.875rem 2rem}}@media (prefers-reduced-motion: reduce){.start-screen .fire-effect,.start-screen .fire-effect:before,.start-screen .fire-effect:after{animation:none;opacity:.3}.start-button:before{display:none}}.intro-animation{position:fixed;top:0;left:0;width:100%;height:100vh;background:linear-gradient(180deg,#0a0a0a,#1a1a1a,#0f0f0f);display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:1000;transition:opacity .3s ease-out}.intro-animation.fade-out{opacity:0}.intro-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}.skip-button{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;font-family:system-ui,-apple-system,sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;z-index:10;transition:all .2s ease}.skip-button:hover{background:#ffffff40;border-color:#ffffff80;transform:scale(1.05)}.skip-button:active{transform:scale(.98)}.skip-button:focus-visible{outline:2px solid #FFB84D;outline-offset:2px}.audio-hint{position:absolute;bottom:4rem;left:50%;transform:translate(-50%);padding:.5rem 1rem;background:#ffb84d33;border:1px solid rgba(255,184,77,.5);border-radius:6px;color:#ffb84d;font-size:.875rem;font-weight:500;z-index:10;animation:pulse 2s ease-in-out infinite;pointer-events:none}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.intro-caption{position:absolute;bottom:2rem;left:2rem;font-family:var(--font-intro);font-size:clamp(2rem,6vw,4rem);color:#ffb84d;margin:0;z-index:10;display:none;-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;text-shadow:0 0 10px rgba(255,184,77,.8),0 0 20px rgba(255,184,77,.6),0 0 30px rgba(255,184,77,.4)}.intro-animation.reduced-motion .intro-caption{display:block}.intro-title{font-family:var(--font-intro);font-size:clamp(2.5rem,8vw,6rem);color:transparent;text-align:center;position:relative;z-index:10;margin:0;padding:0 1rem;-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;animation:strokeReveal 2.5s ease-in-out forwards}@keyframes strokeReveal{0%{-webkit-text-stroke:2px transparent;text-stroke:2px transparent;opacity:0;transform:scale(.8)}20%{-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;opacity:1;transform:scale(1)}60%{-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;color:transparent}to{-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;color:#ffb84d;text-shadow:0 0 20px rgba(255,184,77,.8),0 0 40px rgba(255,184,77,.5),0 0 60px rgba(255,184,77,.3)}}.fog-layer{position:absolute;width:200%;height:100%;top:0;left:-50%;opacity:.3;pointer-events:none}.fog-layer-1{background:linear-gradient(90deg,transparent 0%,rgba(255,184,77,.15) 25%,rgba(255,184,77,.25) 50%,rgba(255,184,77,.15) 75%,transparent 100%);animation:fogDrift1 20s ease-in-out infinite;z-index:1}.fog-layer-2{background:linear-gradient(90deg,transparent 0%,rgba(200,150,100,.1) 30%,rgba(200,150,100,.2) 50%,rgba(200,150,100,.1) 70%,transparent 100%);animation:fogDrift2 25s ease-in-out infinite;animation-delay:-5s;z-index:2}.fog-layer-3{background:linear-gradient(90deg,transparent 0%,rgba(255,200,120,.08) 20%,rgba(255,200,120,.15) 50%,rgba(255,200,120,.08) 80%,transparent 100%);animation:fogDrift3 30s ease-in-out infinite;animation-delay:-10s;z-index:3}@keyframes fogDrift1{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(-20%) translateY(-5%)}}@keyframes fogDrift2{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(15%) translateY(5%)}}@keyframes fogDrift3{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(-10%) translateY(-3%)}}.particles{position:absolute;width:100%;height:100%;top:0;left:0;overflow:hidden;pointer-events:none;z-index:5}.particle{position:absolute;width:3px;height:3px;background:radial-gradient(circle,rgba(255,184,77,.8) 0%,transparent 70%);border-radius:50%;top:-10%;animation:particleDrift linear infinite;opacity:0}@keyframes particleDrift{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:.6}90%{opacity:.3}to{transform:translateY(110vh) translate(calc(var(--drift-x, 0) * 50px));opacity:0}}.intro-animation.reduced-motion .intro-title{animation:staticFadeIn 1.5s ease-in forwards}.intro-animation.reduced-motion .fog-layer{animation:none;opacity:.2}@keyframes staticFadeIn{0%{opacity:0}to{opacity:1;color:#ffb84d;-webkit-text-stroke:2px #FFB84D;text-stroke:2px #FFB84D;text-shadow:0 0 20px rgba(255,184,77,.8),0 0 40px rgba(255,184,77,.5)}}@media (max-width: 768px){.intro-title{font-size:clamp(2rem,10vw,4rem);-webkit-text-stroke:1.5px #FFB84D;text-stroke:1.5px #FFB84D}.particle{width:2px;height:2px}}@media (prefers-contrast: high){.intro-title{-webkit-text-stroke:3px #FFB84D;text-stroke:3px #FFB84D}}.creature-selection{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(180deg,#0a0a0a,#1a1a1a);position:relative;overflow-x:hidden;overflow-y:auto}.creature-selection:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 50%,rgba(100,100,100,.1) 0%,transparent 70%);pointer-events:none;animation:pulse-bg 8s ease-in-out infinite}@keyframes pulse-bg{0%,to{opacity:.3}50%{opacity:.6}}.selection-title{font-family:var(--font-selection);font-size:2.5rem;font-weight:700;margin-bottom:3rem;text-align:center;color:#f0f0f0;text-shadow:0 0 20px rgba(255,255,255,.3);z-index:1;max-width:90%;line-height:1.3}.creature-carousel{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:500px;z-index:1;padding:0 1rem}.creature-card{background:#141414e6;border:2px solid rgba(255,255,255,.15);border-radius:16px;padding:2.5rem 2rem;min-height:200px;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.creature-card:hover,.creature-card:focus-visible{transform:scale(1.03) translateY(-4px);border-color:var(--fire-color, rgba(255, 255, 255, .4));box-shadow:0 12px 40px #00000080,0 0 60px var(--fire-color, rgba(255, 255, 255, .3))}.creature-card.hovered{transform:scale(1.03) translateY(-4px);border-color:var(--fire-color, rgba(255, 255, 255, .4));box-shadow:0 12px 40px #00000080,0 0 60px var(--fire-color, rgba(255, 255, 255, .3))}.creature-card-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:1rem}.creature-name{font-family:var(--font-selection);font-size:2.2rem;font-weight:700;color:#f0f0f0;text-align:center;margin:0;transition:all .3s ease-out}.creature-card:hover .creature-name,.creature-card.hovered .creature-name{color:var(--fire-color, #ffffff);text-shadow:0 0 25px var(--fire-color, rgba(255, 255, 255, .6))}.creature-description{font-size:1rem;color:silver;text-align:center;margin:0;font-style:italic;line-height:1.5;transition:color .3s ease-out}.creature-card:hover .creature-description,.creature-card.hovered .creature-description{color:#f0f0f0}.creature-card[data-creature=baba-yaga]{--fire-color: #A67CFF}.creature-card[data-creature=banshee]{--fire-color: #CFE8FF}.creature-card[data-creature=aswang]{--fire-color: #E04B4B}.fire-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;opacity:.3;transition:opacity .35s ease-out;z-index:1}.creature-card:hover .fire-overlay,.creature-card.hovered .fire-overlay{opacity:.6}.fire-particle{position:absolute;width:4px;height:4px;border-radius:50%;animation:float-particle 3s ease-in-out infinite;opacity:0}.fire-overlay[data-creature=baba-yaga] .fire-particle{background:#a67cff;box-shadow:0 0 10px #a67cff}.fire-overlay[data-creature=banshee] .fire-particle{background:#cfe8ff;box-shadow:0 0 10px #cfe8ff}.fire-overlay[data-creature=aswang] .fire-particle{background:#e04b4b;box-shadow:0 0 10px #e04b4b}.fire-particle:nth-child(1){left:20%;bottom:0;animation-delay:0s;animation-duration:3.5s}.fire-particle:nth-child(2){left:40%;bottom:0;animation-delay:.7s;animation-duration:4s}.fire-particle:nth-child(3){left:60%;bottom:0;animation-delay:1.4s;animation-duration:3.2s}.fire-particle:nth-child(4){left:80%;bottom:0;animation-delay:2.1s;animation-duration:3.8s}.fire-particle:nth-child(5){left:50%;bottom:0;animation-delay:2.8s;animation-duration:3.6s}@keyframes float-particle{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:.8}90%{opacity:.8}to{transform:translateY(-200px) translate(calc(var(--drift, 0) * 20px));opacity:0}}.fire-particle:nth-child(1){--drift: -1}.fire-particle:nth-child(2){--drift: 1}.fire-particle:nth-child(3){--drift: -.5}.fire-particle:nth-child(4){--drift: .5}.fire-particle:nth-child(5){--drift: 0}.fire-icon{width:80px;height:80px;position:relative;display:flex;align-items:flex-end;justify-content:center;margin-top:1rem}.fire-icon .flame{position:absolute;bottom:0;width:20px;height:40px;border-radius:50% 50% 0 0;animation:flicker 2s ease-in-out infinite;filter:blur(2px)}.fire-icon[data-creature=baba-yaga] .flame{background:linear-gradient(to top,#A67CFF 0%,transparent 100%)}.fire-icon[data-creature=banshee] .flame{background:linear-gradient(to top,#CFE8FF 0%,transparent 100%)}.fire-icon[data-creature=aswang] .flame{background:linear-gradient(to top,#E04B4B 0%,transparent 100%)}.fire-icon .flame:nth-child(1){left:50%;transform:translate(-50%);animation-delay:0s}.fire-icon .flame:nth-child(2){left:30%;height:30px;width:15px;animation-delay:.3s}.fire-icon .flame:nth-child(3){right:30%;height:35px;width:18px;animation-delay:.6s}@keyframes flicker{0%,to{transform:translateY(0) scaleY(1);opacity:.8}50%{transform:translateY(-5px) scaleY(1.1);opacity:1}}.creature-card:focus-visible{outline:3px solid var(--fire-color, #4A90E2);outline-offset:4px}@media (max-width: 768px){.selection-title{font-size:1.8rem;margin-bottom:2rem}.creature-carousel{max-width:100%}.creature-card{padding:2rem 1.5rem;min-height:180px}.creature-name{font-size:1.8rem}.creature-description{font-size:.9rem}.fire-icon{width:60px;height:60px}}@media (min-width: 769px){.creature-selection{max-width:500px;margin:0 auto}}@media (prefers-reduced-motion: reduce){.creature-card,.fire-overlay,.creature-name,.creature-description{transition:none}.creature-card:hover,.creature-card.hovered{transform:scale(1.01)}.fire-particle,.flame{animation:none;opacity:0}.creature-selection:before{animation:none}}.creature-selection.reduced-motion .creature-card,.creature-selection.reduced-motion .fire-overlay,.creature-selection.reduced-motion .creature-name,.creature-selection.reduced-motion .creature-description{transition:none}.creature-selection.reduced-motion .creature-card:hover,.creature-selection.reduced-motion .creature-card.hovered{transform:scale(1.01)}.creature-selection.reduced-motion .fire-particle,.creature-selection.reduced-motion .flame{animation:none;opacity:0}.creature-selection.reduced-motion:before{animation:none}.exit-button{margin-top:2rem;padding:1rem 2.5rem;background:linear-gradient(135deg,#3c3c3ce6,#282828e6);border:2px solid rgba(255,255,255,.3);border-radius:12px;color:#f0f0f0;font-size:1.1rem;font-weight:600;font-family:Playfair Display,serif;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #0006,inset 0 -3px 8px #0000004d,inset 0 1px 2px #ffffff1a;text-shadow:0 2px 4px rgba(0,0,0,.5);z-index:10;position:relative}.exit-button:hover,.exit-button:focus-visible{transform:translateY(-2px);background:linear-gradient(135deg,#505050f2,#3c3c3cf2);border-color:#ffffff80;box-shadow:0 6px 20px #00000080,inset 0 -3px 8px #0000004d,inset 0 1px 2px #fff3}.exit-button:active{transform:translateY(0);box-shadow:0 2px 10px #0006,inset 0 -2px 6px #0000004d,inset 0 1px 2px #ffffff1a}.exit-button:focus-visible{outline:3px solid rgba(255,255,255,.5);outline-offset:4px}@media (max-width: 768px){.exit-button{padding:.875rem 2rem;font-size:1rem;margin-top:1.5rem}}.character-reveal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;overflow:hidden;background:#000}.character-image{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative}.character-image.entrance{animation:entranceAnimation .45s cubic-bezier(.4,0,.2,1) forwards}@keyframes entranceAnimation{0%{opacity:0;transform:scale(1.05) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.character-image.closeup{animation:closeupAnimation .5s cubic-bezier(.4,0,.2,1) forwards;animation-delay:0ms;opacity:1;transform:scale(1) translateY(0)}@keyframes closeupAnimation{0%{transform:scale(1)}to{transform:scale(1.15)}}.character-image.complete{opacity:1;transform:scale(1.15)}.character-reveal.exiting .character-image{animation:exitToStory .6s cubic-bezier(.4,0,.2,1) forwards}@keyframes exitToStory{0%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.parallax-layer{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 0%,rgba(0,0,0,.2) 100%);animation:parallaxShift 3s ease-in-out infinite}@keyframes parallaxShift{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(2px) translateY(-2px)}}@media (prefers-reduced-motion: reduce){.character-image.entrance,.character-image.closeup,.character-reveal.exiting .character-image{animation:none;opacity:1;transform:scale(1)}.parallax-layer{animation:none}}.character-reveal.reduced-motion .character-image.entrance,.character-reveal.reduced-motion .character-image.closeup,.character-reveal.reduced-motion.exiting .character-image{animation:none;opacity:1;transform:scale(1)}.character-reveal.reduced-motion .parallax-layer{animation:none}@media (max-width: 768px){.character-image{background-size:cover;background-position:center top}}.story-bubbles{position:fixed;top:0;left:0;right:0;bottom:0;z-index:101;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:2rem;cursor:pointer}.story-background{animation:storyBackgroundEntrance .8s cubic-bezier(.4,0,.2,1) forwards;will-change:filter,opacity}@keyframes storyBackgroundEntrance{0%{opacity:0;filter:blur(0px)!important}to{opacity:1;filter:blur(8px)!important}}.bubbles-container{display:flex;flex-direction:column;gap:1rem;max-width:80%;align-items:flex-end}.story-bubble{padding:1.5rem;max-width:400px;position:relative;transform-origin:right center;opacity:1}.story-bubble.fade-in{animation:popFadeIn .4s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.3s;opacity:0}.story-bubble.fade-out{animation:fadeOut .2s ease-out forwards}@keyframes popFadeIn{0%{opacity:0;transform:translate(20px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes fadeOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-10px) scale(.98)}}.bubble-text{margin:0;line-height:1.6;position:relative;z-index:2}.baba-yaga-bubble{background:#000000b3;border-radius:20px;border:2px solid #A67CFF;box-shadow:0 0 20px #a67cff66,inset 0 0 20px #a67cff1a}.baba-yaga-bubble .bubble-text{font-family:var(--font-baba-yaga);color:#e0d4ff;font-size:1rem}.baba-yaga-bubble .rune-particle{position:absolute;width:8px;height:8px;background:radial-gradient(circle,#A67CFF 0%,transparent 70%);border-radius:50%;opacity:.6;animation:driftRune 4s ease-in-out infinite;pointer-events:none}.baba-yaga-bubble .rune-particle:nth-child(1){top:20%;left:15%;animation-delay:0s;animation-duration:3.5s}.baba-yaga-bubble .rune-particle:nth-child(2){top:60%;left:80%;animation-delay:1s;animation-duration:4.2s}.baba-yaga-bubble .rune-particle:nth-child(3){top:40%;left:50%;animation-delay:2s;animation-duration:3.8s}@keyframes driftRune{0%,to{transform:translate(0);opacity:.4}50%{transform:translate(-5px,-10px);opacity:.8}}.banshee-bubble{background:#cfe8ff;border-radius:4px;border:3px solid #7BA8C7;box-shadow:0 0 0 1px #5a8aa8,inset 0 0 10px #7ba8c74d;position:relative;overflow:hidden}.banshee-bubble .bubble-text{font-family:var(--font-banshee);color:#1a3a4a;font-size:1rem;text-shadow:1px 1px 0 rgba(255,255,255,.5)}.banshee-bubble .scanline-noise{position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(123,168,199,.1) 2px,rgba(123,168,199,.1) 4px);pointer-events:none;animation:scanlineMove 2s linear infinite;z-index:1}@keyframes scanlineMove{0%{transform:translateY(0)}to{transform:translateY(4px)}}.banshee-bubble .echo-ripple{position:absolute;width:100%;height:100%;border:2px solid #7BA8C7;border-radius:4px;opacity:0;animation:echoRipple 2s ease-out infinite;pointer-events:none;z-index:0}.banshee-bubble .echo-ripple:nth-child(1){animation-delay:0s}.banshee-bubble .echo-ripple:nth-child(2){animation-delay:.5s}@keyframes echoRipple{0%{transform:scale(1);opacity:.6}to{transform:scale(1.1);opacity:0}}.aswang-bubble{background:linear-gradient(135deg,#3a3a3a,#6a6a6a);border-radius:15px 25px 20px 18px;border:none;box-shadow:0 4px 20px #0009,inset 0 0 30px #ffffff0d;position:relative;overflow:visible}.aswang-bubble:before{content:"";position:absolute;top:-10px;left:-10px;right:-10px;bottom:-10px;background:inherit;filter:blur(15px);opacity:.5;z-index:-1;border-radius:inherit}.aswang-bubble .bubble-text{font-family:var(--font-aswang);color:#f5f5f5;font-size:1.25rem;text-shadow:0 0 10px rgba(0,0,0,.8);font-weight:500}.aswang-bubble .micro-fog{position:absolute;width:30px;height:30px;background:radial-gradient(circle,rgba(100,100,100,.4) 0%,transparent 70%);border-radius:50%;opacity:.6;animation:driftFog 5s ease-in-out infinite;pointer-events:none;filter:blur(8px)}.aswang-bubble .micro-fog:nth-child(1){top:-10px;left:20%;animation-delay:0s;animation-duration:4.5s}.aswang-bubble .micro-fog:nth-child(2){bottom:-10px;right:30%;animation-delay:1.5s;animation-duration:5.2s}.aswang-bubble .micro-fog:nth-child(3){top:50%;left:-15px;animation-delay:3s;animation-duration:4.8s}@keyframes driftFog{0%,to{transform:translate(0);opacity:.3}50%{transform:translate(10px,-5px);opacity:.7}}.progress-indicators{display:flex;gap:.5rem;margin-top:2rem;justify-content:center;width:100%}.progress-dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d;transition:all .3s ease-out}.progress-dot.completed{background:#fffc;transform:scale(1.2)}.progress-dot.current{background:#fff;transform:scale(1.4);box-shadow:0 0 10px #fff9}.next-button{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.5rem;border-radius:12px;background:#ffffff40;border:2px solid rgba(255,255,255,.6);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:102;font-size:.95rem;font-weight:600;min-width:100px;white-space:nowrap;overflow:visible}.next-button:after{content:"Next";display:inline-block}.next-button:hover,.next-button:focus{background:#fff6;border-color:#fffc;transform:scale(1.05)}.next-button:focus-visible{outline:3px solid rgba(255,255,255,.8);outline-offset:4px}.baba-yaga .next-button{background:linear-gradient(135deg,#a67cff4d,#ba55d34d);border:2px solid #A67CFF;color:#e0d4ff;box-shadow:0 0 20px #a67cff66,0 4px 15px #0000004d;font-family:var(--font-baba-yaga);text-shadow:0 0 10px rgba(166,124,255,.6)}.baba-yaga .next-button:hover,.baba-yaga .next-button:focus{background:linear-gradient(135deg,#a67cff80,#ba55d380);border-color:#ba55d3;box-shadow:0 0 30px #a67cff99,0 6px 20px #0006;transform:scale(1.05)}.banshee .next-button{background:#cfe8ff;border:3px solid #7BA8C7;color:#1a3a4a;box-shadow:0 0 0 1px #5a8aa8,0 4px 15px #0000004d;font-family:var(--font-banshee);text-shadow:1px 1px 0 rgba(255,255,255,.5);border-radius:4px;font-size:1.15rem;font-weight:500}.banshee .next-button:hover,.banshee .next-button:focus{background:#a8d0f0;border-color:#5a8aa8;box-shadow:0 0 0 1px #4a7a98,0 6px 20px #0006;transform:scale(1.05)}.aswang .next-button{background:linear-gradient(135deg,#3a3a3ae6,#6a6a6ae6);border:2px solid #E04B4B;color:#f5f5f5;box-shadow:0 0 20px #e04b4b66,0 4px 15px #00000080;font-family:var(--font-aswang);text-shadow:0 0 10px rgba(0,0,0,.8);border-radius:15px 25px 20px 18px;font-size:1.15rem;font-weight:500;text-align:center}.aswang .next-button:hover,.aswang .next-button:focus{background:linear-gradient(135deg,#3a3a3a,#6a6a6a);border-color:tomato;box-shadow:0 0 30px #e04b4b99,0 6px 20px #0009;transform:scale(1.05)}@media (prefers-reduced-motion: reduce){.story-background{animation:none;opacity:1;filter:blur(8px)!important}.story-bubble{animation:none;animation-delay:0s;opacity:1;transform:translate(0) scale(1)}.rune-particle,.echo-ripple,.micro-fog,.scanline-noise{animation:none;opacity:0}.next-button:hover,.next-button:focus{transform:none}}.story-bubbles.reduced-motion .story-bubble{animation:none;animation-delay:0s;opacity:1;transform:translate(0) scale(1)}.story-bubbles.reduced-motion .rune-particle,.story-bubbles.reduced-motion .echo-ripple,.story-bubbles.reduced-motion .micro-fog,.story-bubbles.reduced-motion .scanline-noise{animation:none;opacity:0}.story-bubbles.reduced-motion .next-button:hover,.story-bubbles.reduced-motion .next-button:focus{transform:none}@media (max-width: 768px){.story-bubbles{padding:1rem}.bubbles-container{max-width:90%}.story-bubble{padding:1.2rem;max-width:100%}.bubble-text{font-size:.95rem}.next-button{bottom:1.5rem;right:1.5rem;width:45px;height:45px}}.gameplay-screen{position:fixed;top:0;left:0;width:100%;height:100vh;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;background:#000;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.gameplay-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;filter:blur(3px);z-index:0}.level-badge{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;background:#000000e6;border:2px solid var(--creature-primary);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0009}.scene-section{position:relative;z-index:10;padding:5rem 1.5rem 1.5rem;flex-shrink:0;transition:all .4s ease-out;opacity:1;transform:translateY(0);max-height:500px}.scene-section.hidden{opacity:0;transform:translateY(-50px);pointer-events:none;max-height:0;padding-top:0;padding-bottom:0;margin:0;overflow:hidden}.scene-box{max-width:500px;margin:0 auto;padding:1.75rem 2rem;background:#000000eb;border:2px solid var(--creature-primary);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #000c,0 0 20px var(--creature-primary)}.scene-text{font-family:var(--creature-font);font-size:1.05rem;line-height:1.7;color:#fff;margin:0;text-align:center;text-shadow:0 2px 8px rgba(0,0,0,.9)}.consequence-section{position:relative;z-index:10;padding:4.5rem 1rem 0;flex-shrink:0;animation:slideDown .4s ease-out}.mechanic-section{position:relative;z-index:10;flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem;overflow:visible;transition:all .4s ease-out}.mechanic-box{width:100%;max-width:500px;padding:2rem;background:#000000eb;border:2px solid var(--creature-primary);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #000c,0 0 20px var(--creature-primary);max-height:none}.mechanic-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.mechanic-title{font-family:var(--creature-font);font-size:1.1rem;font-weight:600;color:var(--creature-primary);margin:0;text-transform:uppercase;letter-spacing:.1em;text-shadow:0 0 10px var(--creature-primary)}.riddle-text{font-family:var(--creature-font);font-size:1rem;line-height:1.6;color:#f0f0f0;font-style:italic;padding:1.25rem;background:#a67cff26;border-radius:12px;border-left:4px solid var(--creature-primary);margin:0 0 1.25rem}.riddle-form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem;align-items:center}.riddle-input{width:100%;padding:1rem 1.25rem;background:#000000b3;border:2px solid var(--creature-primary);border-radius:12px;color:#fff;font-size:1rem;font-family:var(--creature-font);text-align:center}.riddle-input::placeholder{color:#ffffff80}.riddle-input:focus{outline:none;border-color:var(--creature-secondary);box-shadow:0 0 20px #a67cff80}.riddle-button{padding:.875rem 2rem;background:linear-gradient(135deg,#ff6ec7,#a67cff);border:2px solid #ff6ec7;border-radius:12px;color:#fff;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #ff6ec766,0 0 20px #ff6ec74d;min-width:140px;position:relative;overflow:hidden}.riddle-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.riddle-button:hover:not(:disabled):before{left:100%}.riddle-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #ff6ec799,0 0 30px #ff6ec780;border-color:#ff8fd9}.riddle-button:active:not(:disabled){transform:translateY(0)}.riddle-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.feedback{padding:.875rem 1.125rem;border-radius:12px;text-align:center;font-weight:500;margin-bottom:.75rem}.feedback.correct{color:#4ade80;background:#4ade8026;border:2px solid #4ade80}.feedback.incorrect{color:#f87171;background:#f8717126;border:2px solid #f87171}.hint-box{padding:.875rem 1.125rem;background:#ffd70026;border-radius:12px;border-left:4px solid #ffd700;color:gold;font-size:.95rem}.hint-box strong{text-transform:uppercase;letter-spacing:.05em;margin-right:.5rem}.mood-badge{padding:.375rem .875rem;border-radius:12px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.mood-badge.peaceful{color:#cfe8ff;background:#cfe8ff33}.mood-badge.sorrowful{color:#a8d8ff;background:#a8d8ff33}.mood-badge.anguished{color:#7ab8e8;background:#7ab8e833}.calmness-meter{width:100%;height:36px;background:#000000b3;border-radius:18px;border:2px solid var(--creature-primary);overflow:hidden;margin-bottom:.75rem;position:relative}.meter-fill{height:100%;transition:width .4s ease-out,background .4s ease-out,filter .4s ease-out;box-shadow:inset 0 0 20px #ffffff4d}.creature-banshee .meter-fill{background:var(--creature-primary)}.creature-banshee .calmness-meter[data-calmness=peaceful] .meter-fill{background:#cfe8ff;filter:brightness(1)}.creature-banshee .calmness-meter[data-calmness=sorrowful] .meter-fill{background:#a8d8ff;filter:brightness(.85)}.creature-banshee .calmness-meter[data-calmness=anguished] .meter-fill{background:#7ab8e8;filter:brightness(.7)}.meter-labels{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#ffffffb3}.meter-value{color:var(--creature-primary);font-weight:600;font-size:1rem}.deduction-hint{text-align:center;color:#ffffffb3;font-size:.95rem;margin:.75rem 0 1.5rem;font-style:italic}.item-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.item-btn{padding:1.25rem 1rem;background:#000000b3;border:2px solid rgba(255,255,255,.2);border-radius:14px;color:#f0f0f0;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem;min-height:120px}.item-btn:hover{transform:translateY(-3px);border-color:var(--creature-primary);box-shadow:0 6px 20px #e04b4b66;background:#000000d9}.item-btn.selected{background:#e04b4b40;border-color:var(--creature-primary);border-width:3px;box-shadow:0 0 25px #e04b4b80}.item-icon{font-size:2rem;margin-bottom:.25rem}.item-name{font-size:.9rem;font-weight:600;text-align:center;color:var(--creature-primary)}.item-desc{font-size:.8rem;text-align:center;color:#fff9;font-style:italic}.choices-section{position:relative;z-index:10;padding:1rem 1.5rem 2rem;flex-shrink:0;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease-out}.choices-section.hidden{opacity:0;transform:translateY(20px);pointer-events:none;height:0;padding:0;overflow:hidden}.choice-btn{width:100%;max-width:500px;margin:0 auto;padding:1.25rem 1.75rem;background:#000000eb;border:2px solid var(--creature-primary);border-radius:14px;color:#fff;font-family:var(--creature-font);font-size:1.05rem;font-weight:500;text-align:center;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 15px #0009,0 0 15px var(--creature-primary);line-height:1.5}.choice-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 6px 20px #000c,0 0 25px var(--creature-primary);border-width:3px}.choice-btn:active:not(:disabled){transform:translateY(-1px)}.choice-btn.selected{background:rgba(var(--creature-primary),.2);border-width:3px}.choice-btn.dimmed{opacity:.4;transform:scale(.98)}.choice-btn:disabled{cursor:not-allowed}.consequence-box{max-width:500px;margin:0 auto;padding:1.5rem 1.75rem;background:#000000f2;border-radius:16px;text-align:center;font-size:1.1rem;font-weight:500;line-height:1.6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.consequence-box.correct{color:#4ade80;border:3px solid #4ade80;box-shadow:0 8px 32px #000c,0 0 30px #4ade8080}.consequence-box.incorrect{color:#f87171;border:3px solid #f87171;box-shadow:0 8px 32px #000c,0 0 30px #f8717180}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.creature-baba-yaga .choice-btn{box-shadow:0 4px 15px #0009,0 0 15px #a67cff66}.creature-banshee .choice-btn{box-shadow:0 4px 15px #0009,0 0 15px #cfe8ff66;font-size:1.2rem;letter-spacing:.03em}.creature-banshee .scene-text{font-size:1.2rem;letter-spacing:.03em;line-height:1.8}.creature-aswang .choice-btn{box-shadow:0 4px 15px #0009,0 0 15px #e04b4b66;font-size:1.25rem;letter-spacing:.05em}.creature-aswang .scene-text{font-size:1.25rem;letter-spacing:.05em;line-height:1.8}.creature-aswang .mechanic-title{font-size:1.2rem;letter-spacing:.12em}.creature-aswang .deduction-hint{font-size:1.05rem;letter-spacing:.03em}.creature-aswang .item-name{font-size:1rem;letter-spacing:.05em}.creature-aswang .item-desc{font-size:.9rem;letter-spacing:.03em}@media (max-width: 768px){.level-badge{top:.75rem;right:.75rem;padding:.4rem .875rem;font-size:.85rem}.scene-section{padding:4rem .75rem 0}.scene-box{padding:1rem 1.25rem}.scene-text{font-size:.95rem}.mechanic-section{padding:.75rem}.mechanic-box{padding:1.25rem}.mechanic-title{font-size:1rem}.token-grid{grid-template-columns:1fr}.choices-section{padding:0 .75rem 1.25rem;gap:.75rem}.choice-btn{padding:1rem 1.25rem;font-size:.95rem}.creature-banshee .choice-btn,.creature-banshee .scene-text{font-size:1.05rem}.creature-aswang .choice-btn,.creature-aswang .scene-text{font-size:1.1rem}}@media (max-height: 600px) and (orientation: landscape){.scene-section{padding:3rem .75rem 0}.scene-box{padding:.875rem 1rem}.scene-text{font-size:.9rem;line-height:1.4}.mechanic-box{padding:1rem}.choices-section{padding:0 .75rem 1rem}.choice-btn{padding:.875rem 1.125rem}}@media (prefers-reduced-motion: reduce){.choice-btn,.consequence-box,.feedback,.hint-box{animation:none;transition:none}.choice-btn:hover{transform:none}}.mechanic-section.faded,.choices-section.faded{animation:fadeOutElements .3s ease-out forwards;pointer-events:none}@keyframes fadeOutElements{0%{opacity:1}to{opacity:0}}.consequence-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:200;padding:2rem;animation:fadeIn .3s ease-out}.consequence-box-large{max-width:500px;padding:2rem;background:#000000f2;border:6px solid var(--creature-primary);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #000000e6,0 0 40px var(--creature-primary);font-family:var(--creature-font);font-size:1.1rem;line-height:1.7;color:#fff;text-align:center;animation:scaleIn .4s ease-out}.consequence-box-large.correct{border-color:#4ade80;border-width:6px;box-shadow:0 8px 32px #000000e6,0 0 50px #4ade80cc,inset 0 0 30px #4ade8033}.consequence-box-large.incorrect{border-color:#f87171;border-width:6px;box-shadow:0 8px 32px #000000e6,0 0 50px #f87171cc,inset 0 0 30px #f8717133}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.ambient-lantern{position:absolute;width:20px;height:28px;pointer-events:none;z-index:1}.lantern-body{position:relative;width:100%;height:100%}.lantern-top{position:absolute;top:0;left:50%;transform:translate(-50%);width:12px;height:3px;background:linear-gradient(to bottom,#8b4513,#654321);border-radius:2px 2px 0 0}.lantern-glow{position:absolute;top:3px;left:50%;transform:translate(-50%);width:16px;height:18px;border-radius:3px;background:var(--lantern-color, #A67CFF);box-shadow:0 0 8px var(--lantern-color, #A67CFF),0 0 12px var(--lantern-color, #A67CFF),inset 0 0 6px #ffffff4d;animation:lantern-flicker 3s ease-in-out infinite}.lantern-bottom{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:10px;height:4px;background:linear-gradient(to top,#654321,#8b4513);border-radius:0 0 2px 2px}.lantern-string{position:absolute;top:-8px;left:50%;transform:translate(-50%);width:1px;height:8px;background:#8b451399}@keyframes lantern-flicker{0%,to{opacity:1}50%{opacity:.85}}@keyframes lantern-fly{0%{transform:translate(0) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(var(--fly-x),var(--fly-y)) rotate(var(--fly-rotate));opacity:0}}.ambient-lantern.flying{animation:lantern-fly var(--fly-duration, 3s) ease-in-out forwards}.ambient-lantern.static{animation:lantern-sway 4s ease-in-out infinite}@keyframes lantern-sway{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(2deg)}}.ambient-crystal{position:absolute;pointer-events:none;z-index:1}.crystal-pixel{width:16px;height:16px;position:relative;image-rendering:pixelated;image-rendering:crisp-edges}.crystal-shape{width:2px;height:2px;background:#cfe8ff;box-shadow:0 0 0 2px #cfe8ff,0 -2px 0 2px #a8d8ff,0 -4px 0 2px #cfe8ff,0 2px 0 2px #a8d8ff,0 4px 0 2px #cfe8ff,-2px -2px 0 2px #a8d8ff,-4px -2px 0 2px #cfe8ff,-2px 2px 0 2px #a8d8ff,2px -2px 0 2px #a8d8ff,4px -2px 0 2px #cfe8ff,2px 2px 0 2px #a8d8ff,0 0 4px #cfe8ff,0 0 8px #cfe8ff80;animation:crystal-shimmer 2s ease-in-out infinite}@keyframes crystal-shimmer{0%,to{filter:brightness(1);opacity:1}50%{filter:brightness(1.3);opacity:.9}}@keyframes crystal-fly{0%{transform:translate(0) rotate(0) scale(1);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(var(--fly-x),var(--fly-y)) rotate(var(--fly-rotate)) scale(.5);opacity:0}}.ambient-crystal.flying{animation:crystal-fly var(--fly-duration, 3s) ease-in-out forwards}.ambient-crystal.static{animation:crystal-float 5s ease-in-out infinite}@keyframes crystal-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(5deg)}}.ambient-fire{position:absolute;pointer-events:none;z-index:1}.fire-container{position:relative;width:24px;height:32px}.flame{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:20px;height:24px;background:radial-gradient(ellipse at center bottom,#FF4500 0%,#FF6347 30%,#FFA500 60%,transparent 100%);border-radius:50% 50% 0 0;animation:flame-dance 1.5s ease-in-out infinite}.flame.inner{width:12px;height:18px;background:radial-gradient(ellipse at center bottom,#FFD700 0%,#FFA500 40%,#FF6347 70%,transparent 100%);animation:flame-dance 1.2s ease-in-out infinite reverse}@keyframes flame-dance{0%,to{transform:translate(-50%) scaleY(1) scaleX(1);opacity:1}25%{transform:translate(-48%) scaleY(1.1) scaleX(.95);opacity:.9}50%{transform:translate(-52%) scaleY(.95) scaleX(1.05);opacity:1}75%{transform:translate(-50%) scaleY(1.05) scaleX(.98);opacity:.95}}.smoke{position:absolute;bottom:20px;left:50%;transform:translate(-50%);width:12px;height:16px;background:radial-gradient(ellipse at center,rgba(128,128,128,.6) 0%,rgba(96,96,96,.4) 40%,transparent 100%);border-radius:50%;animation:smoke-rise 2s ease-out infinite}@keyframes smoke-rise{0%{transform:translate(-50%) translateY(0) scale(.8);opacity:.6}to{transform:translate(-50%) translateY(-20px) scale(1.2);opacity:0}}@keyframes fire-fly{0%{transform:translate(0) scale(1);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate(var(--fly-x),var(--fly-y)) scale(.7);opacity:0}}.ambient-fire.flying{animation:fire-fly var(--fly-duration, 3s) ease-in-out forwards}.ambient-fire.static{animation:fire-flicker-static 3s ease-in-out infinite}@keyframes fire-flicker-static{0%,to{opacity:1}50%{opacity:.85}}@media (prefers-reduced-motion: reduce){.ambient-lantern.flying,.ambient-crystal.flying,.ambient-fire.flying{animation:none;opacity:0}.ambient-lantern.static,.ambient-crystal.static,.ambient-fire.static,.lantern-glow,.crystal-shape,.flame,.smoke{animation:none}}.end-card{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;z-index:1000}.end-card-image-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.end-card-creature-image{width:100%;height:100%;object-fit:cover;object-position:center}.victory-dissolve{animation:none}.victory-dissolve-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to top,var(--fire-color) 0%,var(--fire-color) 50%,transparent 100%);mix-blend-mode:screen;animation:dissolveBottomToTop 1.8s ease-out forwards;pointer-events:none;opacity:.9}@keyframes dissolveBottomToTop{0%{clip-path:inset(100% 0 0 0);opacity:0}50%{clip-path:inset(50% 0 0 0);opacity:.9}to{clip-path:inset(0 0 0 0);opacity:1}}.defeat-zoom{animation:defeatEatenByCreature 1.2s cubic-bezier(.4,0,.2,1) forwards;transform-origin:center center}@keyframes defeatEatenByCreature{0%{transform:scale(1);filter:blur(0px) brightness(1);opacity:1}40%{transform:scale(1.3);filter:blur(1px) brightness(1.1);opacity:1}70%{transform:scale(1.8);filter:blur(3px) brightness(.8);opacity:.9}to{transform:scale(2.5);filter:blur(8px) brightness(.3);opacity:0}}.defeat-vignette{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,transparent 20%,rgba(0,0,0,.95) 80%,#000000 100%);animation:vignetteEngulf 1.2s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}@keyframes vignetteEngulf{0%{opacity:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.5) 80%,#000000 100%)}50%{opacity:.8;background:radial-gradient(ellipse at center,transparent 25%,rgba(0,0,0,.85) 70%,#000000 100%)}to{opacity:1;background:radial-gradient(ellipse at center,transparent 10%,rgba(0,0,0,.98) 50%,#000000 100%)}}.defeat-black-fade{position:absolute;top:0;left:0;width:100%;height:100%;background:#000;animation:blackFadeIn 1.2s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none;z-index:1}@keyframes blackFadeIn{0%{opacity:0}60%{opacity:0}to{opacity:1}}.aswang-defeat-eyes:after{content:"";position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);width:200px;height:100px;background:radial-gradient(ellipse at center,rgba(224,75,75,.8) 0%,transparent 70%);animation:eyeFlare .4s ease-out forwards;pointer-events:none}@keyframes eyeFlare{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{opacity:.7;transform:translate(-50%,-50%) scale(1)}}.end-card-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;text-align:center;max-width:90%;width:500px;padding:2rem;background:#000000d9;border-radius:12px;animation:contentFadeIn .6s ease-out}@keyframes contentFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.end-card-title{font-size:3.5rem;margin:0 0 1.5rem;color:var(--fire-color);text-shadow:0 0 20px var(--fire-color),0 0 40px var(--fire-color),0 0 60px var(--fire-color);animation:titleGlow 2s ease-in-out infinite;line-height:1.2}@keyframes titleGlow{0%,to{opacity:.9;text-shadow:0 0 20px var(--fire-color),0 0 40px var(--fire-color),0 0 60px var(--fire-color)}50%{opacity:1;text-shadow:0 0 30px var(--fire-color),0 0 60px var(--fire-color),0 0 90px var(--fire-color)}}.end-card-text-container{margin:0 0 2rem}.end-card-text{font-size:1.125rem;line-height:1.8;color:#fff;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.9)}.end-card-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.end-card-button{position:relative;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;color:#fff;background:#0009;border:2px solid var(--fire-color);border-radius:8px;cursor:pointer;transition:all .2s ease;overflow:hidden;text-transform:uppercase;letter-spacing:.1em;min-width:140px}.end-card-button--primary{background:linear-gradient(135deg,var(--fire-color) 0%,rgba(0,0,0,.8) 100%);box-shadow:0 0 20px var(--fire-color)}.end-card-button--secondary{background:#000c}.end-card-button:hover{transform:scale(1.05);box-shadow:0 0 30px var(--fire-color)}.end-card-button:active{transform:scale(.98)}.end-card-button:focus{outline:3px solid var(--fire-color);outline-offset:4px}.button-text{position:relative;z-index:2}.button-glow{position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.end-card-button:hover .button-glow{width:300px;height:300px}.end-card.reduced-motion .victory-dissolve-overlay,.end-card.reduced-motion .defeat-zoom,.end-card.reduced-motion .defeat-vignette,.end-card.reduced-motion .aswang-defeat-eyes:after{animation:none}.end-card.reduced-motion .end-card-title{animation:none;opacity:1}.end-card.reduced-motion .end-card-content{animation:none}.end-card.reduced-motion .defeat-zoom{transform:scale(1.1);filter:blur(1px)}.end-card.reduced-motion .victory-dissolve-overlay{clip-path:inset(0 0 0 0)}@media (max-width: 768px){.end-card-content{width:90%;padding:1.5rem}.end-card-title{font-size:2.5rem}.end-card-text{font-size:1rem}.end-card-button{padding:.875rem 2rem;font-size:1rem;min-width:120px}}@media (max-width: 480px){.end-card-title{font-size:2rem}.end-card-text{font-size:.9375rem}.end-card-buttons{flex-direction:column;width:100%}.end-card-button{width:100%}}.level-transition{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:200;overflow:hidden;background:#000}.transition-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;filter:blur(8px);opacity:.6}.level-number-display{position:absolute;top:15%;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:1.5rem;font-size:2.5rem;font-weight:700;color:#fff;text-shadow:0 0 20px rgba(0,0,0,.8);z-index:10;text-transform:uppercase;letter-spacing:.1em}.level-number-display.phase-enter{animation:levelNumberEnter .5s ease-out forwards}.level-number-display.phase-crossing{animation:levelNumberScroll 2.5s ease-in-out forwards}.level-number-display.phase-exit{animation:levelNumberExit 1s ease-in forwards}@keyframes levelNumberEnter{0%{opacity:0;transform:translate(-50%) translateY(-30px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes levelNumberScroll{0%{opacity:1}50%{opacity:.7}to{opacity:1}}@keyframes levelNumberExit{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-30px)}}.level-from{opacity:.6}.level-arrow{font-size:2rem;opacity:.8}.level-to{opacity:1;text-shadow:0 0 30px currentColor}.crossing-scene{position:absolute;bottom:30%;left:0;width:100%;height:200px;display:flex;align-items:center;justify-content:center;z-index:5}.character{position:absolute;left:-10%;width:130px;height:170px;max-width:28vw;max-height:35vh;z-index:10;display:flex;align-items:center;justify-content:center}.character-image{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5));transform:scaleX(-1)}.crossing-scene.phase-enter .character{animation:characterEnter .5s ease-out forwards}.crossing-scene.phase-crossing .character{animation:characterCross 2.5s ease-in-out forwards}.crossing-scene.phase-exit .character{animation:characterExit 1s ease-in forwards}@keyframes characterEnter{0%{left:-10%;opacity:0}to{left:10%;opacity:1}}@keyframes characterCross{0%{left:10%}to{left:90%}}@keyframes characterExit{0%{left:90%;opacity:1}to{left:110%;opacity:0}}.crossing-scene.phase-crossing .character{animation:characterCross 2.5s ease-in-out forwards,characterBounce .5s ease-in-out infinite}@keyframes characterBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.obstacle{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80%;max-width:400px;height:100px}.obstacle-branch{display:flex;align-items:flex-end;justify-content:center;gap:20px}.branch-segment{width:80px;height:60px;background:linear-gradient(135deg,#8b4513,#654321);border-radius:40px 40px 10px 10px;position:relative;box-shadow:0 4px 15px #0009}.branch-1{height:50px;animation:branchFloat1 3s ease-in-out infinite}.branch-2{height:70px;animation:branchFloat2 3s ease-in-out infinite .5s}.branch-3{height:55px;animation:branchFloat3 3s ease-in-out infinite 1s}@keyframes branchFloat1{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(2deg)}}@keyframes branchFloat2{0%,to{transform:translateY(0) rotate(1deg)}50%{transform:translateY(-15px) rotate(-1deg)}}@keyframes branchFloat3{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}.mystical-glow{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;height:80px;background:radial-gradient(ellipse at center,rgba(186,85,211,.4) 0%,transparent 70%);animation:glowPulse 2s ease-in-out infinite;filter:blur(20px)}@keyframes glowPulse{0%,to{opacity:.5;transform:translate(-50%) scale(1)}50%{opacity:.8;transform:translate(-50%) scale(1.1)}}.level-transition--banshee .character-image{image-rendering:pixelated}.obstacle-ice{display:flex;align-items:flex-end;justify-content:center;gap:15px}.ice-block{width:70px;height:50px;background:linear-gradient(135deg,#b0e0e6,#87ceeb,#4682b4);border:3px solid #4A90B8;box-shadow:inset 0 0 20px #ffffff4d,0 4px 15px #00000080;image-rendering:pixelated;position:relative}.ice-1{height:45px;animation:iceFloat1 2.5s ease-in-out infinite}.ice-2{height:60px;animation:iceFloat2 2.5s ease-in-out infinite .4s}.ice-3{height:50px;animation:iceFloat3 2.5s ease-in-out infinite .8s}@keyframes iceFloat1{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes iceFloat2{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes iceFloat3{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.ice-crack{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;height:3px;background:repeating-linear-gradient(90deg,#4A90B8 0px,#4A90B8 10px,transparent 10px,transparent 20px);animation:crackSpread 3s ease-out infinite;image-rendering:pixelated}@keyframes crackSpread{0%{width:0%;opacity:0}50%{width:100%;opacity:1}to{width:100%;opacity:.5}}.obstacle-fire{display:flex;align-items:flex-end;justify-content:center;gap:25px}.fire-trap{width:60px;height:70px;background:linear-gradient(180deg,#ff4500,tomato,#dc143c 60%,#8b0000);border-radius:50% 50% 10px 10px;position:relative;box-shadow:0 0 30px #ff4500cc,inset 0 -10px 20px #8b000099;animation:fireFlicker .3s ease-in-out infinite}.fire-1{height:65px;animation-delay:0s}.fire-2{height:80px;animation-delay:.1s}.fire-3{height:70px;animation-delay:.2s}@keyframes fireFlicker{0%,to{transform:scaleY(1) scaleX(1);opacity:1}25%{transform:scaleY(1.1) scaleX(.95);opacity:.9}50%{transform:scaleY(.95) scaleX(1.05);opacity:.95}75%{transform:scaleY(1.05) scaleX(.98);opacity:.85}}.ember-particles{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:100%;height:120px;background:radial-gradient(ellipse at center,rgba(255,69,0,.3) 0%,transparent 70%);animation:emberGlow 1.5s ease-in-out infinite;filter:blur(15px)}@keyframes emberGlow{0%,to{opacity:.6;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.2)}}.level-transition--baba-yaga .level-to{color:#ba55d3;text-shadow:0 0 30px #BA55D3}.level-transition--banshee .level-to{color:#87ceeb;text-shadow:0 0 30px #87CEEB}.level-transition--aswang .level-to{color:#ff4500;text-shadow:0 0 30px #FF4500}.level-transition.reduced-motion .character,.level-transition.reduced-motion .level-number-display,.level-transition.reduced-motion .branch-segment,.level-transition.reduced-motion .ice-block,.level-transition.reduced-motion .fire-trap{animation:none!important}.level-transition.reduced-motion .character{left:50%;opacity:1}@media (max-width: 768px){.level-number-display{font-size:1.8rem;gap:1rem;top:12%}.level-arrow{font-size:1.5rem}.crossing-scene{bottom:25%;height:150px}.character{width:140px;height:180px}.obstacle{width:90%;height:80px}.branch-segment,.ice-block,.fire-trap{width:60px}}.goodbye-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000;position:fixed;top:0;left:0;width:100%;height:100vh;overflow:hidden;padding:2rem;z-index:2000}.goodbye-screen .fire-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;overflow:hidden;z-index:1}.goodbye-screen .fire-effect{width:8px;height:8px;position:absolute;border-radius:50%;animation:floatUp 4s ease-in infinite;opacity:0}.goodbye-screen .purple-fire{background:radial-gradient(circle,#A67CFF 0%,transparent 70%);box-shadow:0 0 20px #a67cff;left:20%;animation-delay:0s}.goodbye-screen .blue-fire{background:radial-gradient(circle,#CFE8FF 0%,transparent 70%);box-shadow:0 0 20px #cfe8ff;left:50%;animation-delay:1.3s}.goodbye-screen .red-fire{background:radial-gradient(circle,#E04B4B 0%,transparent 70%);box-shadow:0 0 20px #e04b4b;left:80%;animation-delay:2.6s}.goodbye-screen .fire-effect:before,.goodbye-screen .fire-effect:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:inherit;box-shadow:inherit}.goodbye-screen .fire-effect:before{left:-100px;animation:floatUp 5s ease-in infinite;animation-delay:.5s}.goodbye-screen .fire-effect:after{left:100px;animation:floatUp 4.5s ease-in infinite;animation-delay:1s}@keyframes floatUp{0%{bottom:-10%;opacity:0;transform:translate(0) scale(1)}10%{opacity:.8}50%{opacity:1;transform:translate(calc(var(--drift, 0) * 30px)) scale(1.2)}90%{opacity:.5}to{bottom:110%;opacity:0;transform:translate(calc(var(--drift, 0) * 60px)) scale(.5)}}.goodbye-content{text-align:center;z-index:10;max-width:600px;position:relative}.goodbye-title{font-family:Playfair Display,serif;font-size:3rem;font-weight:700;color:#ff8c00;margin-bottom:1rem;text-shadow:0 0 20px rgba(255,140,0,.6),0 0 40px rgba(255,140,0,.4);animation:title-glow 2s ease-in-out infinite}@keyframes title-glow{0%,to{text-shadow:0 0 20px rgba(255,140,0,.6),0 0 40px rgba(255,140,0,.4)}50%{text-shadow:0 0 30px rgba(255,140,0,.8),0 0 60px rgba(255,140,0,.6)}}.goodbye-subtitle{font-size:1.2rem;color:silver;margin-bottom:3rem;font-style:italic}.pumpkin-container{position:relative;width:220px;height:240px;margin:0 auto 2rem}.pumpkin{position:absolute;top:0;left:50%;transform:translate(-50%);width:100%;height:100%;transition:opacity .2s ease-out}.pumpkin-container.happy .happy-pumpkin{opacity:1;z-index:2}.pumpkin-container.happy .horror-pumpkin,.pumpkin-container.horror .happy-pumpkin{opacity:0;z-index:1}.pumpkin-container.horror .horror-pumpkin{opacity:1;z-index:2;animation:glitch-horror .4s ease-out}@keyframes glitch-horror{0%{transform:translate(-50%) translate(0);filter:hue-rotate(0deg)}10%{transform:translate(-50%) translate(-8px,3px);filter:hue-rotate(90deg)}20%{transform:translate(-50%) translate(8px,-3px);filter:hue-rotate(-90deg)}30%{transform:translate(-50%) translate(-5px,-5px);filter:hue-rotate(45deg)}40%{transform:translate(-50%) translate(5px,5px);filter:hue-rotate(-45deg)}50%{transform:translate(-50%) translate(-3px,2px);filter:hue-rotate(0deg)}60%{transform:translate(-50%) translate(3px,-2px)}to{transform:translate(-50%) translate(0);filter:hue-rotate(0deg)}}.pumpkin-stem{width:24px;height:35px;background:linear-gradient(to bottom,#8b4513,#654321);border-radius:6px 6px 0 0;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:inset -3px -3px 8px #0006,inset 2px 2px 6px #8b451399}.pumpkin-stem.horror{background:linear-gradient(to bottom,#2a2a2a,#1a1a1a);box-shadow:inset -3px -3px 8px #000c,0 0 15px #8b000080}.pumpkin-body{width:180px;height:180px;background:linear-gradient(135deg,#ff8c00,#ff6b00,#ff8c00);border-radius:50%;position:relative;margin:30px auto 0;box-shadow:0 15px 50px #ff8c0080,inset -15px -15px 40px #0000004d,inset 15px 15px 40px #ffc86466;animation:pumpkin-glow 3s ease-in-out infinite}@keyframes pumpkin-glow{0%,to{box-shadow:0 15px 50px #ff8c0080,inset -15px -15px 40px #0000004d,inset 15px 15px 40px #ffc86466}50%{box-shadow:0 15px 60px #ff8c00b3,inset -15px -15px 40px #0000004d,inset 15px 15px 40px #ffc86480}}.pumpkin-body.horror{background:linear-gradient(135deg,#8b0000,#4b0000,#8b0000);box-shadow:0 15px 60px #8b0000cc,inset -15px -15px 40px #000000b3,inset 15px 15px 40px #8b000066;animation:horror-pulse .5s ease-in-out infinite}@keyframes horror-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.pumpkin-eye.closed{position:absolute;top:55px;width:30px;height:8px;background:#000;border-radius:50%}.pumpkin-eye.left.closed{left:40px}.pumpkin-eye.right.closed{right:40px}.pumpkin-eye.horror-eye{position:absolute;top:50px;width:35px;height:45px;background:#000;clip-path:polygon(50% 0%,100% 40%,80% 100%,20% 100%,0% 40%)}.pumpkin-eye.left.horror-eye{left:35px}.pumpkin-eye.right.horror-eye{right:35px}.pumpkin-eye.horror-eye:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:red;border-radius:50%;box-shadow:0 0 15px #ff0000e6;animation:evil-glow .8s ease-in-out infinite}@keyframes evil-glow{0%,to{box-shadow:0 0 15px #ff0000e6;opacity:1}50%{box-shadow:0 0 25px red;opacity:.8}}.pumpkin-mouth.cute-smile{position:absolute;bottom:50px;left:50%;transform:translate(-50%);width:70px;height:35px;border:5px solid #000;border-top:none;border-radius:0 0 70px 70px;background:transparent}.pumpkin-mouth.horror-mouth{position:absolute;bottom:40px;left:50%;transform:translate(-50%);width:100px;height:55px;background:#000;border-radius:10px;box-shadow:inset 0 5px 15px #ff000080,0 0 20px #8b000099}.teeth-row{position:absolute;top:0;left:50%;transform:translate(-50%);display:flex;gap:8px;justify-content:center}.sharp-tooth{width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:18px solid #FFF;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));animation:tooth-shake .3s ease-in-out infinite}.sharp-tooth:nth-child(1){animation-delay:0s}.sharp-tooth:nth-child(2){animation-delay:.1s}.sharp-tooth:nth-child(3){animation-delay:.2s}.sharp-tooth:nth-child(4){animation-delay:.3s}@keyframes tooth-shake{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.goodbye-message{font-size:1.1rem;color:#888;font-style:italic;animation:fade-pulse 3s ease-in-out infinite}@keyframes fade-pulse{0%,to{opacity:.5}50%{opacity:1}}@media (max-width: 768px){.goodbye-title{font-size:2rem}.goodbye-subtitle{font-size:1rem}.pumpkin-container{width:170px;height:190px}.pumpkin-stem{width:18px;height:28px}.pumpkin-body{width:140px;height:140px;margin-top:25px}.pumpkin-eye.closed{width:24px;height:6px;top:42px}.pumpkin-eye.left.closed{left:30px}.pumpkin-eye.right.closed{right:30px}.pumpkin-eye.horror-eye{width:28px;height:36px;top:38px}.pumpkin-eye.left.horror-eye{left:28px}.pumpkin-eye.right.horror-eye{right:28px}.pumpkin-mouth.cute-smile{width:55px;height:28px;bottom:38px;border-width:4px}.pumpkin-mouth.horror-mouth{width:80px;height:45px;bottom:32px}.sharp-tooth{border-left-width:6px;border-right-width:6px;border-top-width:14px}.teeth-row{gap:6px}}@media (prefers-reduced-motion: reduce){.goodbye-screen .fire-effect,.goodbye-screen .fire-effect:before,.goodbye-screen .fire-effect:after{animation:none;opacity:.3}.pumpkin-container.horror .horror-pumpkin,.pumpkin-body,.pumpkin-body.horror{animation:none}.pumpkin-eye.horror-eye:after{animation:none}.sharp-tooth{animation:none}}.reduced-motion-toggle{position:fixed;bottom:1rem;left:1rem;z-index:1000;display:flex;align-items:center;gap:4px;padding:.35rem .6rem;background:#000000bf;border:1.5px solid rgba(255,255,255,.3);border-radius:6px;color:var(--color-text, #f0f0f0);font-family:inherit;font-size:.65rem;cursor:pointer;transition:background-color .2s ease,transform .1s ease,border-color .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reduced-motion-toggle:hover{background:#000000e6;border-color:var(--creature-primary, #FFB84D);transform:scale(1.03)}.reduced-motion-toggle:active{border-color:var(--creature-primary, #FFB84D);transform:scale(.98)}.reduced-motion-toggle:focus-visible{outline:2px solid var(--creature-primary, #FFB84D);outline-offset:4px;border-color:var(--creature-primary, #FFB84D)}.toggle-icon{font-size:.75rem;line-height:1}.toggle-text{font-weight:500;font-size:.65rem}@media (prefers-reduced-motion: reduce){.reduced-motion-toggle{transition:none}.reduced-motion-toggle:hover,.reduced-motion-toggle:active{transform:none}}body.reduced-motion-active .reduced-motion-toggle:hover,body.reduced-motion-active .reduced-motion-toggle:active{transform:none}@media (max-width: 768px){.reduced-motion-toggle{bottom:.75rem;left:.75rem;padding:.3rem .5rem;font-size:.6rem;gap:3px}.toggle-icon{font-size:.7rem}.toggle-text{font-size:.6rem}}.sound-cue-visual{position:fixed;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}.sound-effect-ripple{width:100px;height:100px;border:3px solid var(--creature-primary-color, #FFB84D);border-radius:50%;animation:ripple-expand .6s ease-out forwards}@keyframes ripple-expand{0%{width:20px;height:20px;opacity:1;border-width:3px}to{width:200px;height:200px;opacity:0;border-width:1px}}.sound-effect-pulse{width:80px;height:80px;background:radial-gradient(circle,var(--creature-primary-color, #FFB84D) 0%,transparent 70%);border-radius:50%;animation:pulse-glow .5s ease-in-out forwards}@keyframes pulse-glow{0%{transform:translate(-50%,-50%) scale(.5);opacity:1}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.sound-effect-shake{width:60px;height:60px;background:var(--creature-primary-color, #FFB84D);border-radius:8px;animation:shake-vibrate .4s ease-in-out forwards}@keyframes shake-vibrate{0%,to{transform:translate(-50%,-50%) translate(0);opacity:1}10%,30%,50%,70%,90%{transform:translate(-50%,-50%) translate(-10px)}20%,40%,60%,80%{transform:translate(-50%,-50%) translate(10px)}to{opacity:0}}.sound-effect-fade{width:120px;height:120px;background:radial-gradient(circle,var(--creature-primary-color, #FFB84D) 0%,transparent 100%);border-radius:50%;animation:fade-out .8s ease-out forwards}@keyframes fade-out{0%{opacity:.8;transform:translate(-50%,-50%) scale(.8)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.sound-effect-burst{width:100px;height:100px;animation:burst-expand 1s ease-out forwards}.sound-effect-burst:before,.sound-effect-burst:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border:2px solid var(--creature-primary-color, #FFB84D);border-radius:50%;transform:translate(-50%,-50%)}@keyframes burst-expand{0%{width:20px;height:20px;opacity:1}50%{width:150px;height:150px;opacity:.6}to{width:250px;height:250px;opacity:0}}.sound-cue-caption{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:10000;pointer-events:none}.sound-cue-descriptor{display:inline-block;padding:8px 16px;background:#000000d9;color:#fff;font-size:14px;font-family:Courier New,monospace;border-radius:4px;border:1px solid var(--creature-primary-color, #FFB84D);box-shadow:0 2px 8px #0000004d;animation:caption-fade-in-out .5s ease-in-out}@keyframes caption-fade-in-out{0%{opacity:0;transform:translateY(10px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}@media (prefers-reduced-motion: reduce){.sound-cue-visual{animation:none!important}.sound-effect-ripple,.sound-effect-pulse,.sound-effect-shake,.sound-effect-fade,.sound-effect-burst{animation:simple-fade .3s ease-out forwards}@keyframes simple-fade{0%{opacity:.8}to{opacity:0}}.sound-cue-descriptor{animation:none;opacity:1}}@media (prefers-contrast: high){.sound-cue-descriptor{border-width:2px;font-weight:700}}.back-button{position:fixed;top:1rem;left:1rem;z-index:1000;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-family:system-ui,-apple-system,sans-serif;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#ffffff40;border-color:#ffffff80;transform:scale(1.05)}.back-button:active{transform:scale(.98)}.back-button:focus-visible{outline:2px solid #FFB84D;outline-offset:2px}.back-icon{font-size:1.25rem;line-height:1;font-weight:900}@media (prefers-reduced-motion: reduce){.back-button{transition:none}.back-button:hover,.back-button:active{transform:none}}body.reduced-motion-active .back-button:hover,body.reduced-motion-active .back-button:active{transform:none}@media (max-width: 768px){.back-button{top:.75rem;left:.75rem;width:2.25rem;height:2.25rem}.back-icon{font-size:1.15rem}}@font-face{font-family:Asimovian;src:url(/Folklorerun-game/assets/Asimovian-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--font-baba-yaga: "Asimovian", "Courier New", monospace;--font-banshee: "Jersey 10", "Courier New", monospace;--font-aswang: "Road Rage", "Impact", sans-serif;--font-intro: "Rubik Wet Paint", "Georgia", serif;--font-selection: "Playfair Display", "Georgia", serif;--font-base: "Georgia", serif;--color-bg: #1a1a1a;--color-text: #f0f0f0;--creature-primary: #A67CFF;--creature-secondary: #8B5FE6;--creature-fog: rgba(166, 124, 255, .22);--creature-particle: #D4B3FF;--baba-yaga-primary: #A67CFF;--baba-yaga-secondary: #8B5FE6;--baba-yaga-fog: rgba(166, 124, 255, .22);--baba-yaga-particle: #D4B3FF;--baba-yaga-fire: #A67CFF;--baba-yaga-glow: .8;--banshee-primary: #CFE8FF;--banshee-secondary: #A8D0F0;--banshee-fog: rgba(207, 232, 255, .18);--banshee-particle: #E8F4FF;--banshee-fire: #CFE8FF;--banshee-glow: .6;--aswang-primary: #E04B4B;--aswang-secondary: #B83838;--aswang-fog: rgba(224, 75, 75, .35);--aswang-particle: #FF6B6B;--aswang-fire: #E04B4B;--aswang-glow: .9;--fog-density: .3;--particle-count: 20;--animation-intensity: .5;--animation-speed: 1;--glow-intensity: .8;--vignette-intensity: 0;--distortion-amount: 0;--transition-state: .35s ease-in-out;--transition-scene: .42s cubic-bezier(.4, 0, .2, 1);--transition-choice: .2s ease-out;--transition-fog: .5s ease-in-out;--transition-particle: .3s ease-in;--focus-ring-width: 3px;--focus-ring-color: #4A90E2;--focus-ring-offset: 4px;--contrast-minimum: 4.5;--text-shadow-contrast: 0 0 8px rgba(0, 0, 0, .8)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Georgia,serif;background-color:var(--color-bg);color:var(--color-text);min-height:100vh;overflow-x:hidden}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@media (min-width: 768px){body{display:flex;align-items:center;justify-content:center;background:#000}.app{max-width:56.25vh;width:100%;height:100vh;margin:0 auto;box-shadow:0 0 40px #000c;overflow:hidden}.app--character-reveal,.app--story{max-width:56.25vh;width:100%;height:100vh;margin:0 auto}}@keyframes fog-drift-1{0%{transform:translate(0) translateY(0);opacity:calc(var(--fog-density) * .8)}50%{transform:translate(-30px) translateY(-20px);opacity:calc(var(--fog-density) * 1)}to{transform:translate(0) translateY(0);opacity:calc(var(--fog-density) * .8)}}@keyframes fog-drift-2{0%{transform:translate(0) translateY(0);opacity:calc(var(--fog-density) * .6)}50%{transform:translate(40px) translateY(30px);opacity:calc(var(--fog-density) * .9)}to{transform:translate(0) translateY(0);opacity:calc(var(--fog-density) * .6)}}@keyframes fog-drift-3{0%{transform:translate(0) translateY(0) scale(1);opacity:calc(var(--fog-density) * .7)}50%{transform:translate(-20px) translateY(40px) scale(1.1);opacity:calc(var(--fog-density) * 1)}to{transform:translate(0) translateY(0) scale(1);opacity:calc(var(--fog-density) * .7)}}@keyframes particle-float{0%{transform:translateY(0) translate(0) scale(1);opacity:0}10%{opacity:calc(var(--animation-intensity) * .8)}90%{opacity:calc(var(--animation-intensity) * .8)}to{transform:translateY(-100vh) translate(calc(var(--drift-x, 0) * 1px)) scale(.5);opacity:0}}@keyframes particle-drift{0%,to{transform:translate(0)}50%{transform:translate(calc(var(--drift-amount, 20) * 1px))}}@keyframes rune-glow{0%,to{opacity:calc(var(--glow-intensity) * .6);filter:brightness(1)}50%{opacity:calc(var(--glow-intensity) * 1);filter:brightness(1.3)}}@keyframes echo-wave{0%{transform:scale(.8);opacity:calc(var(--glow-intensity) * .8)}50%{transform:scale(1.1);opacity:calc(var(--glow-intensity) * .4)}to{transform:scale(.8);opacity:calc(var(--glow-intensity) * .8)}}@keyframes flicker{0%,to{opacity:calc(var(--glow-intensity) * .9)}25%{opacity:calc(var(--glow-intensity) * .4)}50%{opacity:calc(var(--glow-intensity) * 1)}75%{opacity:calc(var(--glow-intensity) * .6)}}@keyframes screen-tilt{0%,to{transform:rotate(0)}50%{transform:rotate(.5deg)}}@keyframes vignette-pulse{0%,to{opacity:var(--vignette-intensity)}50%{opacity:calc(var(--vignette-intensity) * 1.2)}}*:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);transition:outline-color var(--transition-state)}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:var(--focus-ring-width) solid var(--creature-primary);outline-offset:var(--focus-ring-offset)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body.reduced-motion-active *,body.reduced-motion-active *:before,body.reduced-motion-active *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}body.reduced-motion-active .particle,body.reduced-motion-active .fog-layer,body.reduced-motion-active .parallax-element{animation:none!important;transform:none!important}@media (prefers-reduced-motion: reduce){.particle,.fog-layer,.parallax-element{animation:none!important;transform:none!important}}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--color-text)}.app-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.app-error button{padding:.75rem 2rem;font-size:1rem;background:var(--creature-primary);color:#000;border:none;border-radius:4px;cursor:pointer;transition:transform .2s ease}.app-error button:hover{transform:scale(1.05)}.app--gameplay{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:2rem 1rem}.level-indicator{position:fixed;top:1rem;right:1rem;padding:.5rem 1rem;background:#000000b3;border:1px solid var(--creature-primary);border-radius:4px;font-size:.875rem;color:var(--color-text);z-index:100}.level-text{font-weight:700;color:var(--creature-primary)}.error-boundary{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem;text-align:center;background:var(--color-bg);color:var(--color-text)}.error-boundary h1{font-size:2rem;color:#ff6b6b;margin-bottom:.5rem}.error-boundary p{font-size:1.125rem;max-width:600px;line-height:1.6}.error-boundary button{padding:.75rem 2rem;font-size:1rem;background:var(--creature-primary);color:#000;border:none;border-radius:4px;cursor:pointer;transition:transform .2s ease,background .2s ease;font-weight:700}.error-boundary button:hover{transform:scale(1.05);background:var(--creature-secondary, #FF8C42)}.error-boundary button:active{transform:scale(.98)}.fog-layer{position:absolute;width:100%;height:100%;pointer-events:none;background:radial-gradient(ellipse at center,transparent 0%,var(--creature-fog) 100%);transition:opacity var(--transition-fog)}.fog-layer-1{animation:fog-drift-1 calc(20s / var(--animation-speed)) ease-in-out infinite}.fog-layer-2{animation:fog-drift-2 calc(25s / var(--animation-speed)) ease-in-out infinite;animation-delay:-5s}.fog-layer-3{animation:fog-drift-3 calc(30s / var(--animation-speed)) ease-in-out infinite;animation-delay:-10s}.particle{position:absolute;width:4px;height:4px;background:var(--creature-particle);border-radius:50%;pointer-events:none;animation:particle-float calc(5s / var(--animation-speed)) linear infinite;box-shadow:0 0 8px var(--creature-particle)}.particle.rune-glow{animation:particle-float calc(5s / var(--animation-speed)) linear infinite,rune-glow calc(2s / var(--animation-speed)) ease-in-out infinite}.particle.echo-wave{animation:particle-float calc(5s / var(--animation-speed)) linear infinite,echo-wave calc(3s / var(--animation-speed)) ease-in-out infinite}.particle.flicker{animation:particle-float calc(5s / var(--animation-speed)) linear infinite,flicker calc(.8s / var(--animation-speed)) ease-in-out infinite}.vignette{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.8) 100%);opacity:var(--vignette-intensity);animation:vignette-pulse calc(4s / var(--animation-speed)) ease-in-out infinite;transition:opacity var(--transition-state);z-index:50}.screen-tilt{animation:screen-tilt calc(6s / var(--animation-speed)) ease-in-out infinite}.text-high-contrast{color:var(--color-text);text-shadow:var(--text-shadow-contrast)}.text-creature-themed{color:var(--creature-primary);text-shadow:0 0 12px var(--creature-primary)}.transition-state{transition:all var(--transition-state)}.transition-scene{transition:all var(--transition-scene)}.transition-choice{transition:all var(--transition-choice)}body{font-size:16px;line-height:1.5}h1{font-size:1.75rem;line-height:1.2}h2{font-size:1.5rem;line-height:1.3}h3{font-size:1.25rem;line-height:1.4}p{font-size:1rem;line-height:1.6;margin-bottom:1rem}button{font-size:1rem;padding:.75rem 1.5rem;min-height:44px;min-width:44px}@media (min-width: 576px){body{font-size:17px}h1{font-size:2rem}h2{font-size:1.75rem}.app--gameplay{padding:1.5rem 1rem}}@media (min-width: 768px){body{font-size:18px}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}.app--gameplay{padding:2rem 1.5rem}button{font-size:1.125rem;padding:.875rem 2rem}}@media (min-width: 992px){h1{font-size:3rem}h2{font-size:2.25rem}.app--gameplay{padding:2.5rem 2rem}}@media (min-width: 1200px){h1{font-size:3.5rem}h2{font-size:2.5rem}.app--gameplay{padding:3rem 2rem}}@media (max-width: 767px){.app--gameplay{padding:1rem .5rem}.level-indicator{top:.5rem;right:.5rem;padding:.375rem .75rem;font-size:.75rem}.particle:nth-child(n+15){display:none}}@media (max-height: 600px) and (orientation: landscape){.app--gameplay{padding:.5rem}h1{font-size:1.5rem}h2{font-size:1.25rem}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.text-high-contrast{text-shadow:0 0 10px rgba(0,0,0,.9)}}@media print{.particle,.fog-layer,.vignette{display:none}body{background:#fff;color:#000}}.app--gameplay{position:relative;width:100%;height:100vh;overflow:hidden;display:flex;flex-direction:column}.gameplay-ui-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none;z-index:100}.gameplay-ui-container>*{pointer-events:auto}.level-indicator{position:absolute;top:1rem;right:1rem;background:#000000d9;padding:.5rem 1rem;border-radius:20px;border:2px solid rgba(255,255,255,.3);z-index:150;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #00000080}.level-text{font-size:.9rem;color:#f0f0f0;font-weight:600;letter-spacing:.05em;text-shadow:0 2px 4px rgba(0,0,0,.8)}.mechanics-area{flex:0 0 auto;width:100%;max-width:600px;margin:auto auto 0;padding:0 1rem .75rem;display:flex;flex-direction:column;gap:.75rem;max-height:35vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent}.mechanics-area::-webkit-scrollbar{width:6px}.mechanics-area::-webkit-scrollbar-track{background:transparent}.mechanics-area::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.mechanics-area::-webkit-scrollbar-thumb:hover{background:#ffffff80}@media (max-width: 768px){.level-indicator{top:.75rem;right:.75rem;padding:.4rem .8rem}.level-text{font-size:.85rem}.mechanics-area{padding:0 .75rem .5rem;max-height:30vh}}@media (max-height: 600px) and (orientation: landscape){.level-indicator{top:.5rem;right:.5rem;padding:.3rem .6rem}.level-text{font-size:.75rem}.mechanics-area{max-height:25vh;padding:0 .5rem .5rem}}
